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