X-Git-Url: https://git.cyclocoop.org/?p=lhc%2Fateliers.git;a=blobdiff_plain;f=etc%2Fsv%2Fcyclo_paris_est__openerp%2Frun;h=4074f4d02e441d67b3cacf5c4df822f1eb598a9c;hp=f930bc6d3d1287014d5951ee7954ec5dc6c7a0cb;hb=2e5bb0ff5df2b7a5d527a4f896b802df31d3c6bc;hpb=1b63122dd097c575896b4c4158ed5439eeca1563 diff --git a/etc/sv/cyclo_paris_est__openerp/run b/etc/sv/cyclo_paris_est__openerp/run index f930bc6..4074f4d 100755 --- a/etc/sv/cyclo_paris_est__openerp/run +++ b/etc/sv/cyclo_paris_est__openerp/run @@ -1,9 +1,95 @@ #!/bin/sh -eux exec 2>&1 sv=${PWD#/etc/sv/} +home=/home/"$sv" +cd / + /usr/bin/sv -w 3 start postgres -eval "home=~$sv" +~postgres/bin/createdb "$sv" + +getent passwd "$sv" >/dev/null || +adduser "$sv" \ + --disabled-login \ + --disabled-password \ + --group \ + --home "$home" \ + --shell /bin/false \ + --system +getent passwd "$sv" >/dev/null || +adduser "$sv"-addon \ + --disabled-login \ + --disabled-password \ + --group \ + --home "$home"/addon.d \ + --shell /bin/false \ + --system + +install -d -m 710 -o root -g "$sv" \ + /etc/sv/"$sv" \ + /etc/sv/"$sv"/supervise +install -d -m 3771 -o "$sv" -g "$sv" \ + "$home" +install -d -m 2770 -o "$sv" -g "$sv"-addon \ + "$home"/addon.d +install -d -m 750 -o "$sv" -g "$sv" \ + "$home"/etc \ + /etc/openerp/"$sv" +ln -fns \ + /etc/openerp/"$sv" \ + "$home"/etc/openerp + +adduser git "$sv"-addon +adduser "$sv" "$sv"-addon +adduser "$sv" postgres-data + +for addon in \ + bikecoop \ + bikecoop_l10n_fr \ + pos_membership \ + remembership \ + cyclofficine_paris_est + do + sudo install -d -m 2771 -o "$sv" -g "$sv"-addon \ + "$home"/addon.d/"$addon" + sudo -u git git \ + --git-dir ~git-data/burette/"$addon".git \ + --work-tree="$home"/addon.d/"$addon" \ + checkout -f master + #sudo -u git git \ + # --git-dir ~git-data/burette/"$addon".git \ + # --work-tree="$home"/addon.d/"$addon" \ + # clean -d -f -f -x + sudo install -m 550 -o git -g git /dev/stdin \ + /home/git/pub/burette/"$addon".git/hooks/post-update <<-EOF + git \ + --git-dir ~git-data/burette/"$addon".git \ + --work-tree="$home"/addon.d/"$addon" \ + checkout -f master + #git \ + # --git-dir ~git-data/burette/"$addon".git \ + # --work-tree="$home"/addon.d/"$addon" \ + # clean -d -f -f -x + #sv restart "$sv" + EOF + done + +test -e "$home"/etc/openerp/server.conf || +/usr/bin/chpst \ + -u "$sv":"$sv":"$sv"-addon:postgres-data \ + /usr/bin/openerp-server \ + --addons-path="$home"/addon.d \ + --config "$home"/etc/openerp/server.conf \ + --database="$sv" \ + --db_user="$sv" \ + --debug \ + --init=remembership,pos_membership,bikecoop \ + --load-language=fr_FR \ + --save \ + --stop-after-init \ + --without-demo=base \ + --workers=2 + exec /usr/bin/chpst \ -u "$sv":"$sv":"$sv"-addon:postgres-data \ - openerp-server \ + /usr/bin/openerp-server \ --config "$home"/etc/openerp/server.conf