150 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
			
		
		
	
	
			150 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
| #!/bin/bash
 | |
| ################################################################################
 | |
| # Script for Installation: ODOO Saas4/Trunk server on Ubuntu 14.04 LTS
 | |
| # Author: André Schenkels, ICTSTUDIO 2014
 | |
| #-------------------------------------------------------------------------------
 | |
| #  
 | |
| # This script will install ODOO Server on
 | |
| # clean Ubuntu 14.04 Server
 | |
| #-------------------------------------------------------------------------------
 | |
| # USAGE:
 | |
| #
 | |
| # odoo-install
 | |
| #
 | |
| # EXAMPLE:
 | |
| # ./odoo-install 
 | |
| #
 | |
| ################################################################################
 | |
|  
 | |
| ##fixed parameters
 | |
| OE_USER="odoo"
 | |
| OE_HOME="/opt/$OE_USER"
 | |
| OE_HOME_EXT="/opt/$OE_USER/$OE_USER-server"
 | |
| 
 | |
| #Enter version for checkout "7.0" for version 7.0, "saas-4, saas-5 (opendays version) and "master" for trunk
 | |
| OE_VERSION="8.0"
 | |
| 
 | |
| #set the superadmin password
 | |
| OE_SUPERADMIN="PzdX2fYj"
 | |
| OE_CONFIG="$OE_USER-server"
 | |
| 
 | |
| #--------------------------------------------------
 | |
| # Set Locale en_US.UTF-8
 | |
| #--------------------------------------------------
 | |
| #echo -e "\n---- Set en_US.UTF-8 Locale ----"
 | |
| #sudo cp /etc/default/locale /etc/default/locale.BACKUP
 | |
| #sudo rm -rf /etc/default/locale
 | |
| #echo -e "* Change server config file"
 | |
| #sudo su root -c "echo 'LC_ALL="en_US.UTF-8"' >> /etc/default/locale"
 | |
| #sudo su root -c "echo 'LANG="en_US.UTF-8"' >> /etc/default/locale"
 | |
| #sudo su root -c "echo 'LANGUAGE="en_US:en"' >> /etc/default/locale"
 | |
| 
 | |
| #--------------------------------------------------
 | |
| # Update Server
 | |
| #--------------------------------------------------
 | |
| echo -e "\n---- Update Server ----"
 | |
| sudo apt-get upgrade -y
 | |
| sudo apt-get update
 | |
| 
 | |
| #--------------------------------------------------
 | |
| # Install PostgreSQL Server
 | |
| #--------------------------------------------------
 | |
| echo -e "\n---- Install PostgreSQL Server ----"
 | |
| sudo apt-get install postgresql -y  
 | |
| 
 | |
| #echo -e "\n---- PostgreSQL $PG_VERSION Settings  ----"
 | |
| #sudo sed -i s/"#listen_addresses = 'localhost'"/"listen_addresses = '*'"/g /etc/postgresql/9.3/main/postgresql.conf
 | |
| 
 | |
| echo -e "\n---- Creating the ODOO PostgreSQL User  ----"
 | |
| sudo su - postgres -c "createuser -s $OE_USER" 2> /dev/null || true
 | |
| 
 | |
| #--------------------------------------------------
 | |
| # Install Dependencies
 | |
| #--------------------------------------------------
 | |
| echo -e "\n---- Install tool packages ----"
 | |
| sudo apt-get install wget git bzr python-pip -y
 | |
| 
 | |
| echo -e "\n---- Install python packages ----"
 | |
| sudo apt-get install python-gevent python-dateutil python-feedparser python-ldap python-libxslt1 python-lxml python-mako python-openid python-psycopg2 python-pybabel python-pychart python-pydot python-pyparsing python-reportlab python-simplejson python-tz python-vatnumber python-vobject python-webdav python-werkzeug python-xlwt python-yaml python-zsi python-docutils python-psutil python-mock python-unittest2 python-jinja2 python-pypdf python-pdftools python-setuptools python-pybabel python-imaging python-matplotlib python-reportlab-accel python-openssl python-egenix-mxdatetime python-paramiko antiword python-decorator poppler-utils python-requests python-passlib -y
 | |
| 
 | |
| sudo pip install gevent gevent_psycopg2 psycogreen passlib psycogreen
 | |
| 	
 | |
| echo -e "\n---- Install latest gdata-python-client ----"
 | |
| cd /tmp
 | |
| wget http://gdata-python-client.googlecode.com/files/gdata-2.0.18.tar.gz
 | |
| tar zxvf gdata-2.0.18.tar.gz
 | |
| cd gdata-2.0.18/
 | |
| sudo python setup.py install
 | |
| 
 | |
| 
 | |
| echo -e "\n---- Install Wkhtmltopdf 0.12.1 ----"
 | |
| sudo wget http://downloads.sourceforge.net/project/wkhtmltopdf/0.12.1/wkhtmltox-0.12.1_linux-wheezy-amd64.deb
 | |
| sudo dpkg -i wkhtmltox-0.12.1_linux-wheezy-amd64.deb
 | |
| sudo cp /usr/local/bin/wkhtmltopdf /usr/bin
 | |
| sudo cp /usr/local/bin/wkhtmltoimage /usr/bin
 | |
| 	
 | |
| echo -e "\n---- Create ODOO system user ----"
 | |
| sudo adduser --system --quiet --shell /bin/bash --home $OE_HOME --gecos 'ODOO' --group $OE_USER
 | |
| sudo adduser $OE_USER sudo
 | |
| sudo cp /root/.profile $OE_HOME
 | |
| sudo chown $OE_USER:$OE_USER $OE_HOME/.profile
 | |
| sudo cp /root/.bashrc $OE_HOME
 | |
| sudo chown $OE_USER:$OE_USER $OE_HOME/.bashrc
 | |
| 
 | |
| echo -e "\n---- Create Log directory ----"
 | |
| sudo mkdir /var/log/$OE_USER
 | |
| sudo chown $OE_USER:$OE_USER /var/log/$OE_USER
 | |
| sudo chmod 700 /var/log/$OE_USER
 | |
| 
 | |
| echo -e "\n---- Set Logrotate config ----"
 | |
| sudo ln -s /opt/odoo/odoo/config/logrotate /etc/logrotate.d/odoo
 | |
| 
 | |
| #--------------------------------------------------
 | |
| # Install ODOO
 | |
| #--------------------------------------------------
 | |
| 
 | |
| echo -e "\n---- Setting permissions on home folder ----"
 | |
| sudo chown -R $OE_USER:$OE_USER $OE_HOME/*
 | |
| 
 | |
| echo -e "Odoo Init File"
 | |
| sudo ln -s /opt/odoo/ext/config/odoo-server.init /etc/init.d/odoo-server
 | |
| 
 | |
| echo -e "\n---- Setup Git ----"
 | |
| sudo -u odoo mkdir /opt/odoo/odoo.git
 | |
| sudo -u odoo mkdir /opt/odoo/odoo
 | |
| cd /opt/odoo/odoo.git
 | |
| sudo -u odoo git init --bare
 | |
| sudo -u odoo touch /opt/odoo/odoo.git/hooks/post-receive
 | |
| sudo -u odoo echo -e '#!/bin/bash' >> /opt/odoo/odoo.git/hooks/post-receive
 | |
| sudo -u odoo echo -e 'git --work-tree=/opt/odoo/odoo --git-dir=/opt/odoo/odoo.git checkout -f' >> /opt/odoo/odoo.git/hooks/post-receive
 | |
| sudo -u odoo chmod +x /opt/odoo/odoo.git/hooks/post-receive
 | |
| 
 | |
| sudo -u odoo mkdir /opt/odoo/ext.git
 | |
| sudo -u odoo mkdir /opt/odoo/ext
 | |
| cd /opt/odoo/ext.git
 | |
| sudo -u odoo git init --bare
 | |
| sudo -u odoo touch /opt/odoo/ext.git/hooks/post-receive
 | |
| sudo -u odoo echo -e '#!/bin/bash' >> /opt/odoo/ext.git/hooks/post-receive
 | |
| sudo -u odoo echo -e 'git --work-tree=/opt/odoo/ext --git-dir=/opt/odoo/ext.git checkout -f' >> /opt/odoo/ext.git/hooks/post-receive
 | |
| sudo -u odoo chmod +x /opt/odoo/ext.git/hooks/post-receive
 | |
| 
 | |
| echo "Done! The ODOO server can be started with /etc/init.d/$OE_CONFIG"
 | |
| echo "Please reboot the server now so that Wkhtmltopdf is working with your install."
 | |
| 
 | |
| echo "Done! Please specify a password for user '$OE_USER'"
 | |
| sudo passwd $OE_USER
 | |
| 
 | |
| ##
 | |
| ##  HERE git push of local is required
 | |
| ##
 | |
| ## Local commands:
 | |
| #git init 
 | |
| #git remote add odoo https://github.com/odoo/odoo.git
 | |
| #git pull odoo 8.0 
 | |
| #git remote add production odoo@134.119.17.66:/opt/odoo/odoo.git
 | |
| #git config --global push.default simple  # only push if on remote exists branch with same name
 | |
| #git push --set-upstream production master
 | |
| 
 | |
| echo -e "* Start ODOO on Startup"
 | |
| sudo update-rc.d $OE_CONFIG defaults
 |