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