Modifications : etc/sv/openerp_lhc_demo/local.sh - ajout du module no_db_management
[lhc/ateliers.git] / etc / sv / openerp_lhc_demo / local.sh
1 home=/home/"$sv"
2
3 "$tool"/local/apt-get-install openerp --force-yes --no-upgrade
4 # XXX: --force-yes car les paquets de nightly.openerp.com
5 # ne sont pas signés par OpenPGP..
6 "$tool"/local/insserv-remove openerp
7
8 while ! sudo -u postgres psql </dev/null
9 do sleep 1; done
10 "$tool"/local/postgresql-user-create "$sv"
11 "$tool"/local/postgresql-database-create "$sv"
12 sudo -u postgres psql -AqtX "$sv" <<-EOF
13 \set ON_ERROR_STOP on
14 GRANT USAGE ON SCHEMA pg_catalog TO $sv;
15 GRANT SELECT ON TABLE pg_catalog.pg_attribute TO $sv;
16 GRANT SELECT ON TABLE pg_catalog.pg_class TO $sv;
17 GRANT SELECT ON TABLE pg_catalog.pg_constraint TO $sv;
18 GRANT SELECT ON TABLE pg_catalog.pg_indexes TO $sv;
19 GRANT SELECT ON TABLE pg_catalog.pg_proc TO $sv;
20 GRANT SELECT ON TABLE pg_catalog.pg_type TO $sv;
21 EOF
22
23 "$tool"/local/adduser "$sv" \
24 --disabled-login \
25 --disabled-password \
26 --group \
27 --home "$home" \
28 --shell /bin/false \
29 --system
30 "$tool"/local/adduser "$sv"-addon \
31 --disabled-login \
32 --disabled-password \
33 --group \
34 --home "$home"/addon.d \
35 --shell /bin/false \
36 --system
37
38 sudo install -d -m 1777 -o root -g root \
39 /etc/openerp
40 sudo install -d -m 3771 -o "$sv" -g "$sv" \
41 "$home"
42 sudo install -d -m 2770 -o "$sv" -g "$sv"-addon \
43 "$home"/addon.d
44 sudo install -d -m 750 -o "$sv" -g "$sv" \
45 "$home"/etc \
46 /etc/openerp/"${sv#openerp_}"
47 sudo ln -fns \
48 /etc/openerp/"${sv#openerp_}" \
49 "$home"/etc/openerp
50 sudo install -m 640 -o root -g root \
51 "$tool"/etc/cron.d/openerp_lhc_demo-restore \
52 /etc/cron.d/openerp_lhc_demo-restore
53
54 sudo adduser git "$sv"-addon
55 sudo adduser "$sv" "$sv"-addon
56 sudo adduser "$sv" postgres-data
57
58 for addon in \
59 bikecoop \
60 bikecoop_demo \
61 bikecoop_l10n_fr \
62 bikecoop_l10n_fr_demo \
63 no_db_management \
64 pos_membership \
65 remembership
66 do
67 sudo install -d -m 2771 -o "$sv" -g "$sv"-addon \
68 "$home"/addon.d/"$addon"
69 sudo -u git git \
70 --git-dir ~git-data/burette/"$addon".git \
71 --work-tree="$home"/addon.d/"$addon" \
72 checkout -f master
73 sudo -u git git \
74 --git-dir ~git-data/burette/"$addon".git \
75 --work-tree="$home"/addon.d/"$addon" \
76 clean -d -f -f -x
77 sudo chmod a-x \
78 /home/git/pub/burette/"$addon".git/hooks/post-update.sample
79 sudo install -m 550 -o git -g git /dev/stdin \
80 /home/git/pub/burette/"$addon".git/hooks/post-update <<-EOF
81 #!/bin/sh -efux
82 find . -type f -perm /+x -name 'post-update.*' |
83 while IFS= read -r hook
84 do "\$hook" "\$@"
85 done
86 EOF
87 sudo install -m 550 -o git -g git /dev/stdin \
88 /home/git/pub/burette/"$addon".git/hooks/post-update."$sv" <<-EOF
89 #!/bin/sh -efux
90 case \$1 in
91 (refs/heads/master)
92 git \\
93 --git-dir ~git-data/burette/"$addon".git \\
94 --work-tree="$home"/addon.d/"$addon" \\
95 checkout -f master
96 git \\
97 --git-dir ~git-data/burette/"$addon".git \\
98 --work-tree="$home"/addon.d/"$addon" \\
99 clean -d -f -f -x
100 #sv restart "$sv"
101 ;;
102 esac
103 EOF
104 done