Modifications : etc/gitolite
[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 cyclo_ivry \
34 cyclo_ivry \
35 cyclo_pantin \
36 cyclo_paris_est \
37 cyclofficine_angouleme \
38 dynamo \
39 labecaneajules \
40 laptitrustine \
41 larouelibre \
42 lechatperche \
43 mobilidees \
44 ohcyclo \
45 ptitvelo \
46 recupr \
47 repeyre \
48 rouepet \
49 txirrindola \
50 velocampus_nantes \
51 velorution_idf \
52 velorution_toulouse \
53 velosenville \
54 vieuxbiclou
55 do
56 test -e /etc/openerp/"$version"/"${sv#openerp7_}"/"$db".ok ||
57 /usr/bin/chpst \
58 -u "$sv":"$sv":"$sv"-addon:postgres-data \
59 /usr/bin/openerp-server \
60 --addons-path="$home"/addon.d \
61 --config /etc/openerp/"$version"/"${sv#openerp7_}"/server.conf \
62 --database="${sv}_$db" \
63 --db_host=/run/postgresql \
64 --db_user="$sv" \
65 --init=remembership,pos_membership,bikecoop,no_db_management \
66 --load-language=fr_FR \
67 --no-xmlrpcs \
68 --osv-memory-age-limit=0.1 \
69 --proxy-mode \
70 --save \
71 --stop-after-init \
72 --timezone="$(cat /etc/timezone)" \
73 --without-demo=base \
74 --workers=0 \
75 --xmlrpc-interface=127.0.0.1 \
76 --xmlrpc-port=8069
77 #--no-database-list \
78 # NOTE: si --workers > 0
79 # --limit-memory-hard=$((300 * 1024 * 1024))
80 # --limit-memory-soft=$((150 * 1024 * 1024))
81 touch /etc/openerp/"$version"/"${sv#openerp7_}"/"$db".ok
82 done
83
84 exec /usr/bin/chpst \
85 -u "$sv":"$sv":"$sv"-addon:postgres-data \
86 /usr/bin/openerp-server \
87 --config /etc/openerp/"$version"/"${sv#openerp7_}"/server.conf \
88 --load-language=fr_FR \
89 --db-filter="^${sv}_%f" \
90 "$@"