mirror of
https://github.com/YunoHost-Apps/libreerp_ynh.git
synced 2024-09-03 19:36:13 +02:00
101 lines
2.9 KiB
Bash
101 lines
2.9 KiB
Bash
#!/bin/bash
|
|
app=odoo
|
|
set -e
|
|
|
|
# Retrieve arguments
|
|
domain=$1
|
|
odoo_version=$2
|
|
admin_password=$3
|
|
database_password=$4
|
|
database_lang=$5
|
|
|
|
|
|
|
|
# Check domain/path availability
|
|
domain=${domain}"/"
|
|
sudo yunohost app checkurl $domain -a $app \
|
|
|| (echo "Path not available: $domain" && exit 1)
|
|
|
|
# Remove trailing "/" for next commands
|
|
domain=${domain%/}
|
|
sudo yunohost app setting $app domain -v $domain
|
|
|
|
if [ -f /usr/bin/openerp-server ]; then
|
|
echo "Odoo is already installed, switching to multi-instances"
|
|
sudo yunohost app setting $app instance -v "slave"
|
|
|
|
else
|
|
sudo yunohost app checkport 8069
|
|
if [[ ! $? -eq 0 ]]; then
|
|
exit 1
|
|
fi
|
|
|
|
echo "Installing odoo"
|
|
sudo yunohost app setting $app version -v $odoo_version
|
|
sudo yunohost app setting $app instance -v "master"
|
|
# Install Odoo
|
|
# Prepare installation
|
|
sudo apt-get -y -qq install curl
|
|
|
|
# Install Odoo
|
|
sudo curl -sS https://nightly.odoo.com/odoo.key | sudo apt-key add -
|
|
if [ "$odoo_version" = "8.0" ]; then
|
|
sudo sh -c 'echo "deb http://nightly.odoo.com/8.0/nightly/deb/ ./" > /etc/apt/sources.list.d/odoo.list'
|
|
else
|
|
sudo sh -c 'echo "deb http://nightly.odoo.com/9.0/nightly/deb/ ./" > /etc/apt/sources.list.d/odoo.list'
|
|
fi
|
|
sudo apt-get update
|
|
|
|
# Initialize installation
|
|
sudo apt-get -y -qq install postgresql
|
|
sudo su - postgres -c "echo \"CREATE USER odoo WITH PASSWORD '$admin_password' CREATEDB;\" | psql" 2> /dev/null || true
|
|
|
|
sudo apt-get -y -qq install odoo
|
|
|
|
# Install wkhtmltopdf to print PDF reports
|
|
sudo apt-get -yf -qq install wkhtmltopdf
|
|
|
|
# Set admin password
|
|
sudo sed -i "s@ADMIN_PASSWORD@$admin_password@g" ../conf/openerp-server.conf
|
|
sudo cp ../conf/openerp-server.conf /etc/odoo/openerp-server.conf
|
|
sudo chown odoo:odoo /etc/odoo/openerp-server.conf
|
|
|
|
# Autoinstall the LDAP auth module
|
|
sudo sed -i "s@'auto_install': False@'auto_install': True@g" /usr/lib/python2.7/dist-packages/openerp/addons/auth_ldap/__openerp__.py
|
|
|
|
# Install oerplib to manage databases
|
|
#sudo pip install oerplib
|
|
|
|
# Add services
|
|
sudo yunohost service add postgresql
|
|
sudo yunohost service add odoo
|
|
sudo yunohost service stop odoo
|
|
sudo yunohost service start odoo
|
|
fi
|
|
|
|
function exit_properly
|
|
{
|
|
set +e
|
|
# TODO: uninstall db
|
|
sudo rm -f /etc/nginx/conf.d/$domain.d/$app.conf
|
|
sudo service nginx reload
|
|
exit 1
|
|
}
|
|
trap exit_properly ERR
|
|
# Setup database: not working
|
|
#sudo sed -i "s@ADMIN_PASSWORD@$admin_password@g" ../conf/install_database.py
|
|
#sudo sed -i "s@DOMAIN_DATABASE@${domain//./-}@g" ../conf/install_database.py
|
|
#sudo sed -i "s@DATABASE_LANG@$database_lang@g" ../conf/install_database.py
|
|
#sudo sed -i "s@DATABASE_PASSWORD@$database_password@g" ../conf/install_database.py
|
|
#sudo python ../conf/install_database.py
|
|
|
|
# Setup LDAP: TO BE DONE
|
|
|
|
# Configure Nginx and reload
|
|
sudo cp ../conf/nginx.conf /etc/nginx/conf.d/$domain.d/$app.conf
|
|
|
|
# Make Odoo public
|
|
sudo yunohost app setting $app skipped_uris -v "/"
|
|
|
|
sudo service nginx reload
|
|
echo $?
|