Modifications : etc/sv/openerp7_burette/local.sh
[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/sh \
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 2750 -o "$sv"-addon -g "$sv"-addon \
31 "$home"/addon.d \
32 "$home"/addon.d/etc
33 sudo ln -fns \
34 /etc/openerp/$version \
35 "$home"/etc/openerp
36
37 while ! sudo -u postgres psql </dev/null
38 do sleep 1; done
39 "$tool"/local/postgresql-user-create "$sv"
40 for db in \
41 atelieretincelle \
42 autourducycle \
43 bretzselle \
44 changedechaine \
45 convibicy \
46 cyclamaine \
47 cyclesetmanivelles \
48 cyclo_ivry \
49 cyclo_pantin \
50 cyclo_paris_est \
51 cyclofficine_angouleme \
52 dynamo \
53 etudesetchantiersidf \
54 etudesetchantiersidf_test \
55 eturecup \
56 heureuxcyclage \
57 labecaneajules \
58 lapetiterennes \
59 laptiterustine \
60 larouelibre \
61 lechatperche \
62 mobilidees \
63 ocivelo \
64 ohcyclo \
65 ptitvelo \
66 recupr \
67 repeyre \
68 rouepet \
69 tousdeuxroues \
70 txirrindola \
71 velocampus_nantes \
72 velorution_idf \
73 velorution_toulouse \
74 velosenville \
75 vieuxbiclou
76 do
77 #"$tool"/local/postgresql-role-create "${sv}_$db"
78 "$tool"/local/postgresql-database-create "${sv}_$db" "$sv"
79 sudo -u postgres psql -AqtX "${sv}_$db" <<-EOF
80 \set ON_ERROR_STOP on
81 GRANT USAGE ON SCHEMA pg_catalog TO $sv;
82 GRANT SELECT ON TABLE pg_catalog.pg_attribute TO $sv;
83 GRANT SELECT ON TABLE pg_catalog.pg_class TO $sv;
84 GRANT SELECT ON TABLE pg_catalog.pg_constraint TO $sv;
85 GRANT SELECT ON TABLE pg_catalog.pg_indexes TO $sv;
86 GRANT SELECT ON TABLE pg_catalog.pg_proc TO $sv;
87 GRANT SELECT ON TABLE pg_catalog.pg_type TO $sv;
88 EOF
89 done
90
91 sudo adduser git "$sv"-addon
92 sudo adduser "$sv" "$sv"-addon
93 sudo adduser "$sv" postgres-data
94
95 for addon in \
96 account_analytic_improvement \
97 account_export_csv \
98 account_move_line_nofilters \
99 atelieretincelle \
100 bikecoop \
101 bikecoop_l10n_fr \
102 bikecoop_translations \
103 bretzselle \
104 changedechaine \
105 cyclamaine \
106 cyclesetmanivelles \
107 cyclofficine_angouleme \
108 cyclofficine_ivry \
109 cyclofficine_paris_est \
110 cyclofficine_pantin \
111 dynamo \
112 etudesetchantiersidf \
113 eturecup \
114 lapetiterennes \
115 laptiterustine \
116 larouelibre \
117 lechatperche \
118 lhc \
119 mobilidees \
120 nrt_point_of_sale \
121 no_db_management \
122 ocivelo \
123 ohcyclo \
124 pos_membership \
125 ptitvelo \
126 recupr \
127 repeyre \
128 tousdeuxroues \
129 txirrindola \
130 remembership \
131 velocampus_nantes \
132 velorution_idf \
133 velosenville
134 #vieuxbiclou_mpt
135 do
136 sudo install -d -m 2771 -o "$sv" -g "$sv"-addon \
137 "$home"/addon.d/"$addon"
138 sudo -u git git \
139 --git-dir ~git-data/burette/"$addon".git \
140 --work-tree="$home"/addon.d/"$addon" \
141 checkout -f master
142 sudo -u git git \
143 --git-dir ~git-data/burette/"$addon".git \
144 --work-tree="$home"/addon.d/"$addon" \
145 clean -d -e sec/ -f -f -x
146 sudo chmod a-x \
147 /home/git/data/burette/"$addon".git/hooks/post-update.sample
148 sudo install -m 550 -o git -g git /dev/stdin \
149 /home/git/data/burette/"$addon".git/hooks/post-update <<-EOF
150 #!/bin/sh -efux
151 find . -type f -perm /+x -name 'post-update.*' |
152 while IFS= read -r hook
153 do "\$hook" "\$@"
154 done
155 EOF
156 sudo install -m 550 -o git -g git /dev/stdin \
157 /home/git/data/burette/"$addon".git/hooks/post-update."$sv" <<-EOF
158 #!/bin/sh -efux
159 case \$1 in
160 (refs/heads/master)
161 git \\
162 --git-dir ~git-data/burette/"$addon".git \\
163 --work-tree="$home"/addon.d/"$addon" \\
164 checkout -f master
165 git \\
166 --git-dir ~git-data/burette/"$addon".git \\
167 --work-tree="$home"/addon.d/"$addon" \\
168 clean -d -e sec/ -f -f -x
169 #sv restart "$sv"
170 ;;
171 esac
172 EOF
173 done