Modifications : etc/sv/openerp7_burette
[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,11 @@
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 + try:
20 + f = req.httprequest.environ['HTTP_OPENERP_DB_FILTER']
21 + r = r.replace('%f', f)
22 + except KeyError:
23 + pass
24 dbs = [i for i in dbs if re.match(r, i)]
25 return dbs
26 EOF
27
28 for db in \
29 atelieretincelle \
30 autourducycle \
31 bretzselle \
32 changedechaine \
33 convibicy \
34 cyclo_ivry \
35 cyclo_ivry \
36 cyclo_pantin \
37 cyclo_paris_est \
38 cyclofficine_angouleme \
39 dynamo \
40 labecaneajules \
41 laptitrustine \
42 larouelibre \
43 lechatperche \
44 letriseratop \
45 mobilidees \
46 ohcyclo \
47 ptitvelo \
48 recupr \
49 repeyre \
50 rouepet \
51 txirrindola \
52 velocampus_nantes \
53 velorution_idf \
54 velorution_toulouse \
55 velosenville \
56 vieuxbiclou
57 do
58 test -e /etc/openerp/"$version"/"${sv#openerp7_}"/"$db".ok ||
59 /usr/bin/chpst \
60 -u "$sv":"$sv":"$sv"-addon:postgres-data \
61 /usr/bin/openerp-server \
62 --addons-path="$home"/addon.d \
63 --config /etc/openerp/"$version"/"${sv#openerp7_}"/server.conf \
64 --database="${sv}_$db" \
65 --db_host=/run/postgresql \
66 --db_user="$sv" \
67 --init=remembership,pos_membership,bikecoop,no_db_management \
68 --load-language=fr_FR \
69 --no-xmlrpcs \
70 --osv-memory-age-limit=0.1 \
71 --proxy-mode \
72 --save \
73 --stop-after-init \
74 --timezone="$(cat /etc/timezone)" \
75 --without-demo=base \
76 --workers=0 \
77 --xmlrpc-interface=127.0.0.1 \
78 --xmlrpc-port=8069
79 #--no-database-list \
80 # NOTE: si --workers > 0
81 # --limit-memory-hard=$((300 * 1024 * 1024))
82 # --limit-memory-soft=$((150 * 1024 * 1024))
83 touch /etc/openerp/"$version"/"${sv#openerp7_}"/"$db".ok
84 done
85
86 exec /usr/bin/chpst \
87 -u "$sv":"$sv":"$sv"-addon:postgres-data \
88 /usr/bin/openerp-server \
89 --config /etc/openerp/"$version"/"${sv#openerp7_}"/server.conf \
90 --load-language=fr_FR \
91 --db-filter="^${sv}_%f" \
92 "$@"