Created by Ivan (capiscuas@gmail.com)
Due that the auroville modules had an installation file dependent for Tryton2.4 and the latest stable Tryton was already 2.6, I decided to create 3 different virtual environments in 3 diferent folders.
~/workspace/tryton24/ -> Tryton2.4 with old auroville modules and the health module(not supported yet Nov 2012 for 2.6)
~/workspace/tryton26/ -> Tryton2.6 to migrate the auroville modules and continue development
~/workspace/tryton27/ -> Tryton2.7 Development code , to check the latest features and be able to improve/send patches to the main Tryton project.
The following script will create the different environment depending on the variable version.
trytond.conf (attachment)
#!/bin/bash version=2.4 #you can choose from 2.4,2.6 or 2.7 #In case you want to work with 2.6, delete the trytond_health module (from modules folder and local/lib/python2.7/site-packages/ folder) sudo apt-get -y install python-setuptools python-pip sudo pip install virtualenv sudo apt-get -y install libxml2-dev sudo apt-get -y install libxslt1-dev sudo apt-get -y install python-gtk2 #sudo apt-get -y install libpq-dev #postgresql sudo apt-get -y install python-dev sudo apt-get -y install sqlite3 libsqlite3-dev # sqlite sudo pip install --upgrade pytz mkdir -p ~/workspace/tryton$version/db mkdir -p ~/workspace/tryton/log cp trytond.conf ~/workspace/tryton$version/ #Download trytond.conf from the attachment. cd ~/workspace/tryton$version virtualenv --system-site-packages env source env/bin/activate if [ "$version" = "2.4" ] then ln -s env/lib/python2.7/site-packages/trytond/modules . pip install --upgrade http://downloads2.tryton.org/2.4/tryton-2.4.2.tar.gz pip install --upgrade http://downloads2.tryton.org/2.4/trytond-2.4.3.tar.gz pip install --upgrade http://downloads2.tryton.org/2.4/trytond_account-2.4.3.tar.gz pip install --upgrade http://downloads2.tryton.org/2.4/trytond_company-2.4.0.tar.gz pip install --upgrade http://downloads2.tryton.org/2.4/trytond_country-2.4.0.tar.gz pip install --upgrade http://downloads2.tryton.org/2.4/trytond_currency-2.4.0.tar.gz pip install --upgrade http://downloads2.tryton.org/2.4/trytond_product-2.4.1.tar.gz #Copy the auroville modules into the modules folder elif [ "$version" = "2.6" ] then ln -s env/lib/python2.7/site-packages/trytond/modules . pip install --upgrade http://downloads2.tryton.org/2.6/tryton-2.6.0.tar.gz pip install --upgrade http://downloads2.tryton.org/2.6/trytond-2.6.1.tar.gz pip install --upgrade http://downloads2.tryton.org/2.6/trytond_account-2.6.1.tar.gz pip install --upgrade http://downloads2.tryton.org/2.6/trytond_company-2.6.0.tar.gz pip install --upgrade http://downloads2.tryton.org/2.6/trytond_country-2.6.0.tar.gz pip install --upgrade http://downloads2.tryton.org/2.6/trytond_currency-2.6.1.tar.gz pip install --upgrade http://downloads2.tryton.org/2.6/trytond_product-2.6.0.tar.gz elif [ "$version" = "2.7" ] #from Mercurial repository then #Read this http://code.google.com/p/tryton/wiki/HowtoContribute #http://code.google.com/p/tryton/wiki/InstallationMercurial sudo apt-get install mercurial hg clone http://hg.tryton.org/tryton/ #Download the mercurial extensions #Get the hgnested from trunk (mercurial) mkdir downloads cd downloads hg clone https://code.google.com/p/hgnested/ pip install --upgrade hgreview cat<<EOF >> ~/.hgrc [extensions] hgnested = ~/workspace/tryton2.7/downloads/hgnested-trunk/hgnested hgreview = [review] server = http://codereview.tryton.org send_email = True EOF cd ~/workspace/tryton$version/ hg nclone http://hg.tryton.org/trytond/ #Install Tryton and Trytond in virtual environment cd ~/workspace/tryton$version/tryton/ python setup.py install cd ~/workspace/tryton$version/trytond/ python setup.py install ln -s env/local/lib/python2.7/site-packages/trytond-2.7.0-py2.7.egg/trytond/modules . else echo 'Wrong Version number' exit 1 fi touch db/tryton.sqlite #the db file needs to exist to initialize it trytond -c trytond.conf -d tryton --init=all #Initialize all the current modules of trytond #we create some launcher trytond/tryton at the same time cat<<EOF > tryton.sh #!/bin/bash source env/bin/activate trytond -c trytond.conf & tryton killall trytond EOF chmod +x ~/workspace/tryton$version/tryton.sh mkdir -p ~/.config/tryton/$version/ cat<<EOF > ~/.config/tryton/$version/profiles.cfg [DEFAULT] port = 8000 [local] host = localhost port = 8000 database = tryton username = admin EOF exit 0 |
If you want to use different Trytond(server) instances at the same time, you should change the PORT number at the tytrond.conf file.