#!/bin/sh -eux exec 2>&1 sv=${PWD#/etc/sv/} home=/home/"$sv" version=7.0 cd / export LOGNAME="$sv" # NOTE: openerp utilise /tmp/oe-sessions-$LOGNAME /bin/grep --fixed-strings --quiet --word-regexp HTTP_OPENERP_DB_FILTER \ /usr/share/pyshared/openerp/addons/web/controllers/main.py || /usr/bin/patch --forward --reject-file=- --strip=0 --unified <<-EOF --- /usr/share/pyshared/openerp/addons/web/controllers/main.py 2013-12-01 05:06:50.121954391 +0100 +++ /usr/share/pyshared/openerp/addons/web/controllers/main.py 2013-12-01 05:07:44.917954389 +0100 @@ -90,6 +90,11 @@ h = req.httprequest.environ['HTTP_HOST'].split(':')[0] d = h.split('.')[0] r = openerp.tools.config['dbfilter'].replace('%h', h).replace('%d', d) + try: + f = req.httprequest.environ['HTTP_OPENERP_DB_FILTER'] + r = r.replace('%f', f) + except KeyError: + pass dbs = [i for i in dbs if re.match(r, i)] return dbs EOF for db in \ atelieretincelle \ autourducycle \ bretzselle \ casabicicleta \ changedechaine \ convibicy \ cyclo_ivry \ cyclo_ivry \ cyclo_pantin \ cyclo_paris_est \ cyclofficine_angouleme \ dynamo \ labecaneajules \ laptitrustine \ larouelibre \ lechatperche \ letriseratop \ mobilidees \ ohcyclo \ ptitvelo \ recupr \ repeyre \ rouepet \ txirrindola \ velocampus_nantes \ velorution_idf \ velorution_toulouse \ velosenville \ vieuxbiclou do test -e /etc/openerp/"$version"/"${sv#openerp7_}"/"$db".ok || /usr/bin/chpst \ -u "$sv":"$sv":"$sv"-addon:postgres-data \ /usr/bin/openerp-server \ --addons-path="$home"/addon.d \ --config /etc/openerp/"$version"/"${sv#openerp7_}"/server.conf \ --database="${sv}_$db" \ --db_host=/run/postgresql \ --db_user="$sv" \ --init=remembership,pos_membership,bikecoop,no_db_management \ --load-language=fr_FR \ --no-xmlrpcs \ --osv-memory-age-limit=0.1 \ --proxy-mode \ --save \ --stop-after-init \ --timezone="$(cat /etc/timezone)" \ --without-demo=base \ --workers=0 \ --xmlrpc-interface=127.0.0.1 \ --xmlrpc-port=8069 #--no-database-list \ # NOTE: si --workers > 0 # --limit-memory-hard=$((300 * 1024 * 1024)) # --limit-memory-soft=$((150 * 1024 * 1024)) touch /etc/openerp/"$version"/"${sv#openerp7_}"/"$db".ok done exec /usr/bin/chpst \ -u "$sv":"$sv":"$sv"-addon:postgres-data \ /usr/bin/openerp-server \ --config /etc/openerp/"$version"/"${sv#openerp7_}"/server.conf \ --load-language=fr_FR \ --db-filter="^${sv}_%f" \ "$@"