[ADD] first version

This commit is contained in:
Ivan Bock
2020-10-30 11:09:11 +01:00
parent 1d3731ae8b
commit 035e184247
3 changed files with 25104 additions and 0 deletions

91
cloud-init/zdc-odoo-init.yaml Executable file
View File

@@ -0,0 +1,91 @@
#cloud-config
# Run 'apt-get update' on first boot
apt_update: true
# Run 'apt-get upgrade' on first boot
apt_upgrade: true
packages:
- curl
- git
- python3-pip
- build-essential
- wget
- python3-dev
- python3-venv
- python3-wheel
- libxslt-dev
- libzip-dev
- libldap2-dev
- libsasl2-dev
- python3-setuptools
- node-less
- postgresql
write_files:
- content: |
[options]
db_host = False
db_port = False
db_user = ubuntu
db_password = False
addons_path = /opt/odoo/odoo12/addons,/opt/odoo/custom-addons/zdc-oca-addons
path: /etc/odoo12.conf
- content: |
[Unit]
Description=Odoo
Requires=postgresql.service
After=network.target postgresql.service
[Service]
Type=simple
SyslogIdentifier=odoo
PermissionsStartOnly=true
User=ubuntu
Group=ubuntu
ExecStart=/opt/odoo/venv-odoo12/bin/python3 /opt/odoo/odoo12/odoo-bin -c /etc/odoo12.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
path: /etc/systemd/system/odoo12.service
# boot commands
# These are like 'runcmd', but run very early in the boot process & run on every boot by default.
bootcmd:
- echo $(whoami) > /root/boot.txt
runcmd:
#- [ wget, "http://slashdot.org", -O, /run/mydir/index.html ]
# install wkhtmltopdf
#- wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb -O /run/wkhtmltox_0.12.6-1.bionic_amd64.deb
#- apt install /run/wkhtmltox_0.12.6-1.bionic_amd64.deb -y
- systemctl enable --now postgresql.service
- su - postgres -c "createuser -s ubuntu"
# setup odoo installation
- mkdir /opt/odoo
- chown ubuntu:ubuntu /opt/odoo/
- sudo -u ubuntu mkdir /opt/odoo/custom-addons
- sudo -u ubuntu wget https://github.com/OCA/OCB/raw/12.0/requirements.txt -O /opt/odoo/requirements.txt
#- sudo -u ubuntu /usr/bin/git clone https://www.github.com/OCA/OCB --depth 1 --branch 12.0 /opt/odoo/odoo12
# setup python3 virtualenv
- sudo -u ubuntu /usr/bin/python3 -m venv /opt/odoo/venv-odoo12
- sudo -u ubuntu cat /opt/odoo/venv-odoo12/bin/activate > /opt/odoo/venv-install.sh
- sudo -u ubuntu echo "pip3 install wheel" >> /opt/odoo/venv-install.sh
- sudo -u ubuntu echo "pip3 install -r /opt/odoo/requirements.txt" >> /opt/odoo/venv-install.sh
#- sudo -u ubuntu /bin/bash /opt/odoo/venv-install.sh
- systemctl daemon-reload
- systemctl enable odoo12
# set the locale
locale: en_US.UTF-8
# timezone: set the timezone for this instance
timezone: UTC
# Log all cloud-init process output (info & errors) to a logfile
output: {all: ">> /var/log/cloud-init-output.log"}
# final_message written to log when cloud-init processes are finished
final_message: "System boot (via cloud-init) is COMPLETE, after $UPTIME seconds. Finished at $TIMESTAMP"

24982
db/zdc-template-db.sql Normal file

File diff suppressed because one or more lines are too long

31
zdc-odoo-vm.sh Executable file
View File

@@ -0,0 +1,31 @@
#!/usr/bin/env bash
NAME=$1
echo "### Create Ubuntu 18.04 LTS VM"
multipass launch bionic --name $NAME --cpus 2 --mem 1280M --disk 12G --cloud-init ./cloud-init/zdc-odoo-init.yaml
echo "### Install wkhtmltopdf"
multipass exec $NAME -- sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb -O /tmp/wkhtmltox_0.12.6-1.bionic_amd64.deb
multipass exec $NAME -- sudo apt install /tmp/wkhtmltox_0.12.6-1.bionic_amd64.deb -y
echo "### Install Python Environment"
multipass exec $NAME -- sudo -u ubuntu /bin/bash /opt/odoo/venv-install.sh
echo "### Install OCB Odoo 12"
#multipass exec $NAME -- sudo -u ubuntu /usr/bin/git clone https://www.github.com/OCA/OCB --depth 1 --branch 12.0 /opt/odoo/odoo12
multipass exec $NAME -- sudo -u ubuntu /usr/bin/git clone https://gitea.egroup.sk/development/zdc-odoo --depth 1 --branch master /opt/odoo/odoo12
multipass exec $NAME -- sudo -u ubuntu /usr/bin/git clone https://gitea.egroup.sk/development/zdc-oca-addons --depth 1 --branch master /opt/odoo/custom-addons/zdc-oca-addons
multipass exec $NAME -- sudo systemctl restart odoo12
echo "### Create ZDC Template DB"
multipass exec $NAME -- sudo -u postgres wget https://gitea.egroup.sk/development/zdc-toools/db/raw/master/zdc-template-db.sql -O zdc-template-db.sql
multipass exec $NAME -- sudo -u postgres psql -c "CREATE DATABASE zdcbasedb1 WITH OWNER=ubuntu;"
multipass exec $NAME -- sudo -u postgres psql -d zdcbasedb1 -f zdc-template-db.sql
echo "### Check VM"
multipass list | grep $NAME
URL_IP=`multipass info $NAME | grep IPv4 | sed -e 's/ //g' -e '/^$/d' | sed -e 's/IPv4://g' -e '/^$/d'`
echo "### Odoo database manager on $NAME server: http://$URL_IP:8069/web/database/selector"