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