You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
169 lines
4.2 KiB
169 lines
4.2 KiB
#!/bin/bash
|
|
|
|
set -eux # -x for verbose logging to juju debug-log
|
|
|
|
|
|
cat <<EOF >> /etc/fstab
|
|
lxc-nfs-datastore:/srv/lxc-datastore/data/git/var/git /var/git nfs4 timeo=14,intr,bootwait,auto 0 0
|
|
EOF
|
|
|
|
mkdir -p /var/git
|
|
mount /var/git || exit 1
|
|
|
|
[ -d "/var/git/0k" ] || exit 1
|
|
|
|
|
|
apt-get install sudo libxml2-dev libxslt-dev libpq-dev libyaml-dev \
|
|
zlib1g-dev libfreetype6-dev \
|
|
libjpeg-dev libmysqlclient-dev -y --force-yes
|
|
|
|
set +eux
|
|
source /srv/virtualenv/default/bin/activate
|
|
set -eux
|
|
|
|
## install deps for PIL compilations
|
|
## from http://www.sandersnewmedia.com/why/2012/04/16/installing-pil-virtualenv-ubuntu-1204
|
|
|
|
if ! [ -e "/usr/lib/libjpeg.so" ]; then
|
|
apt-get build-dep python-imaging -y --force-yes
|
|
ln -s /usr/lib/`uname -i`-linux-gnu/libfreetype.so /usr/lib/
|
|
ln -s /usr/lib/`uname -i`-linux-gnu/libjpeg.so /usr/lib/
|
|
ln -s /usr/lib/`uname -i`-linux-gnu/libz.so /usr/lib/
|
|
fi
|
|
|
|
## Installing PIL with our archive is safer.
|
|
#pip install pil
|
|
(cd /tmp &&
|
|
cp /var/git/archives/PIL-1.1.7.tar.gz . &&
|
|
tar xvzf PIL-1.1.7.tar.gz &&
|
|
cd PIL-1.1.7 &&
|
|
python setup.py install
|
|
)
|
|
|
|
pip install lxml pyparsing==1.5.7 psycopg2 pyyaml reportlab mako \
|
|
pywebdav==0.9.4 feedparser caldav pytz pydot \
|
|
python-dateutil==1.5 cherrypy==3.1.2 formencode==1.2.2 \
|
|
babel simplejson==2.0.9 python-openid mysql-python vatnumber \
|
|
mock unittest2 fudge docutils jinja2 gdata
|
|
|
|
|
|
## Install pychart... from our repo as :
|
|
## download link in PyPi is dead,
|
|
## and gna.org was down recently
|
|
|
|
cp /var/git/archives/PyChart-1.39.tar.gz /tmp
|
|
(cd /tmp ; tar xvzf PyChart*.tar.gz
|
|
cd PyChart*
|
|
python setup.py install
|
|
)
|
|
|
|
|
|
## Install OOOP... from our git repo as:
|
|
## we have some bug correction and custom features
|
|
|
|
if ! [ -d "/opt/apps/ooop" ]; then
|
|
(
|
|
cd /opt/apps &&
|
|
git clone -s /var/git/0k/ooop.git &&
|
|
cd /opt/apps/ooop &&
|
|
git checkout 0k/prod/master &&
|
|
|
|
## beurk
|
|
ln -sf /opt/apps/ooop/ooop.py /srv/virtualenv/default/lib/python2.7/ooop.py
|
|
)
|
|
fi
|
|
|
|
|
|
##
|
|
## Install openobject-server from 0k GIT version
|
|
##
|
|
|
|
(
|
|
cd /opt/apps
|
|
git clone -s /var/git/0k/openobject-server.git
|
|
cd /opt/apps/openobject-server
|
|
git checkout 6.1/0k/prod/master
|
|
)
|
|
|
|
adduser --system --home=/var/lib/openerp --group openerp
|
|
|
|
## XXXvlab: warning password in charm !!
|
|
cp -i etc/openerp-server.conf /etc/
|
|
cp -i etc/init.d/openerp-server /etc/init.d/
|
|
|
|
chown openerp /etc/openerp-server.conf
|
|
chmod 600 /etc/openerp-server.conf
|
|
chown openerp /etc/init.d/openerp-server
|
|
|
|
update-rc.d openerp-server defaults
|
|
|
|
mkdir /var/log/openerp
|
|
touch /var/log/openerp/openerp-server.log
|
|
chown openerp /var/log/openerp -R
|
|
|
|
|
|
## Install add-ons
|
|
## make a better way for installing add-ons
|
|
|
|
#addons_path=/opt/apps/openobject-addons/0k
|
|
#if ! [ -d "$addons_path" ]; then
|
|
# mkdir -p $addons_path
|
|
# for addons in $(/var/git/list-addons 0k/dev/master | grep ^0k); do
|
|
# git clone -s /var/git/$addons /opt/apps/openobject-addons/${addons%.git}
|
|
# (cd /opt/apps/openobject-addons/${addons%.git}
|
|
# git checkout 6.1/0k/prod/master ||
|
|
# git checkout 0k/prod/master ||
|
|
# git checkout 0k/dev/master ||
|
|
# git checkout 6.1/simplee/prod/master ||
|
|
# git checkout simplee/prod/master ||
|
|
# git checkout simplee/dev/master ||
|
|
# git checkout master
|
|
# )
|
|
# done
|
|
#else
|
|
# echo 'WARNING: skipping modules installation as directory was already existent !'
|
|
#fi
|
|
|
|
|
|
## install addons
|
|
|
|
(
|
|
mkdir -p /opt/apps/openobject-addons/ &&
|
|
cd /opt/apps/openobject-addons/ &&
|
|
git clone -s /var/git/0k/openobject-addons legacy &&
|
|
cd /opt/apps/openobject-addons/legacy &&
|
|
git checkout 6.1/0k/dev/master
|
|
)
|
|
|
|
## Install from 0k GIT version
|
|
## because we have bug corrections and new features
|
|
(
|
|
cd /opt/apps &&
|
|
git clone -s /var/git/0k/openerp-web.git &&
|
|
cd /opt/apps/openerp-web &&
|
|
git checkout 6.1/0k/dev/master
|
|
)
|
|
|
|
## Install werkzeug from github last version
|
|
## because last PyPi version is 8.4 and we need the 9.0+
|
|
|
|
(
|
|
cd /tmp &&
|
|
git clone https://github.com/mitsuhiko/werkzeug.git &&
|
|
cd werkzeug &&
|
|
python setup.py install
|
|
)
|
|
|
|
|
|
##
|
|
## Linking with external filestore !
|
|
##
|
|
|
|
(
|
|
cd /opt/apps/openobject-server/openerp &&
|
|
ln -sf /var/openerp-filestore filestore &&
|
|
cd /var/openerp-filestore &&
|
|
chown openerp .
|
|
)
|
|
|
|
|