Ajout : etc/sv/ : $HTTP_OPENERP_DB_FILTER .
[lhc/ateliers.git] / etc / sv / openerp7_burette / run
1 #!/bin/sh -eux
2 exec 2>&1
3 sv=${PWD#/etc/sv/}
4 home=/home/"$sv"
5 version=7.0
6 cd /
7 export LOGNAME="$sv"
8 # NOTE: openerp utilise /tmp/oe-sessions-$LOGNAME
9
10 /bin/grep --fixed-strings --quiet --word-regexp HTTP_OPENERP_DB_FILTER \
11 /usr/share/pyshared/openerp/addons/web/controllers/main.py ||
12 /usr/bin/patch --forward --reject-file=- --strip=0 --unified <<-EOF
13 --- /usr/share/pyshared/openerp/addons/web/controllers/main.py 2013-12-01 05:06:50.121954391 +0100
14 +++ /usr/share/pyshared/openerp/addons/web/controllers/main.py 2013-12-01 05:07:44.917954389 +0100
15 @@ -90,6 +90,8 @@
16 h = req.httprequest.environ['HTTP_HOST'].split(':')[0]
17 d = h.split('.')[0]
18 r = openerp.tools.config['dbfilter'].replace('%h', h).replace('%d', d)
19 + f = req.httprequest.environ['HTTP_OPENERP_DB_FILTER']
20 + r = r.replace('%f', f)
21 dbs = [i for i in dbs if re.match(r, i)]
22 return dbs
23
24 EOF
25
26 for db in \
27 cyclo_ivry \
28 cyclo_pantin \
29 cyclo_paris_est \
30 dynamo \
31 ptitvelo \
32 velorution_idf \
33 velosenville \
34 vieuxbiclou
35 do
36 test -e /etc/openerp/"$version"/"${sv#openerp7_}"/"$db".ok ||
37 /usr/bin/chpst \
38 -u "$sv":"$sv":"$sv"-addon:postgres-data \
39 /usr/bin/openerp-server \
40 --addons-path="$home"/addon.d \
41 --config /etc/openerp/"$version"/"${sv#openerp7_}"/server.conf \
42 --database="${sv}_$db" \
43 --db_host=/run/postgresql \
44 --db_user="$sv" \
45 --debug \
46 --init=remembership,pos_membership,bikecoop \
47 --load-language=fr_FR \
48 --no-xmlrpcs \
49 --osv-memory-age-limit=0.1 \
50 --proxy-mode \
51 --save \
52 --stop-after-init \
53 --timezone="$(cat /etc/timezone)" \
54 --without-demo=base \
55 --workers=4 \
56 --xmlrpc-interface=127.0.0.1 \
57 --xmlrpc-port=8069
58 #--no-database-list \
59 # NOTE: si --workers > 0
60 # --limit-memory-hard=$((300 * 1024 * 1024))
61 # --limit-memory-soft=$((150 * 1024 * 1024))
62 touch /etc/openerp/"$version"/"${sv#openerp7_}"/"$db".ok
63 done
64
65 exec /usr/bin/chpst \
66 -u "$sv":"$sv":"$sv"-addon:postgres-data \
67 /usr/bin/openerp-server \
68 --config /etc/openerp/"$version"/"${sv#openerp7_}"/server.conf \
69 --load-language=fr_FR \
70 --db-filter="^${sv}_%f" \
71 "$@"