Merge branch '17601-register-shell-nodes-for-webshell'
[arvados-formula.git] / kitchen.yml
1 # -*- coding: utf-8 -*-
2 # vim: ft=yaml
3 ---
4 # For help on this file's format, see https://kitchen.ci/
5 driver:
6   name: docker
7   use_sudo: false
8   privileged: true
9   run_command: /lib/systemd/systemd
10
11 platforms:
12   ## SALT `tiamat`
13   - name: debian-10-tiamat-py3
14     driver:
15       image: saltimages/salt-tiamat-py3:debian-10
16   - name: debian-9-tiamat-py3
17     driver:
18       image: saltimages/salt-tiamat-py3:debian-9
19   - name: ubuntu-2004-tiamat-py3
20     driver:
21       image: saltimages/salt-tiamat-py3:ubuntu-20.04
22   - name: ubuntu-1804-tiamat-py3
23     driver:
24       image: saltimages/salt-tiamat-py3:ubuntu-18.04
25   - name: ubuntu-1604-tiamat-py3
26     driver:
27       image: saltimages/salt-tiamat-py3:ubuntu-16.04
28   - name: centos-8-tiamat-py3
29     driver:
30       image: saltimages/salt-tiamat-py3:centos-8
31   - name: centos-7-tiamat-py3
32     driver:
33       image: saltimages/salt-tiamat-py3:centos-7
34   - name: amazonlinux-2-tiamat-py3
35     driver:
36       image: saltimages/salt-tiamat-py3:amazonlinux-2
37   - name: oraclelinux-8-tiamat-py3
38     driver:
39       image: saltimages/salt-tiamat-py3:oraclelinux-8
40   - name: oraclelinux-7-tiamat-py3
41     driver:
42       image: saltimages/salt-tiamat-py3:oraclelinux-7
43
44   ## SALT `master`
45   - name: debian-10-master-py3
46     driver:
47       image: saltimages/salt-master-py3:debian-10
48   - name: debian-9-master-py3
49     driver:
50       image: saltimages/salt-master-py3:debian-9
51   - name: ubuntu-2004-master-py3
52     driver:
53       image: saltimages/salt-master-py3:ubuntu-20.04
54   - name: ubuntu-1804-master-py3
55     driver:
56       image: saltimages/salt-master-py3:ubuntu-18.04
57   - name: ubuntu-1604-master-py3
58     driver:
59       image: saltimages/salt-master-py3:ubuntu-16.04
60   - name: centos-8-master-py3
61     driver:
62       image: saltimages/salt-master-py3:centos-8
63   - name: centos-7-master-py3
64     driver:
65       image: saltimages/salt-master-py3:centos-7
66   - name: amazonlinux-2-master-py3
67     driver:
68       image: saltimages/salt-master-py3:amazonlinux-2
69   - name: oraclelinux-8-master-py3
70     driver:
71       image: saltimages/salt-master-py3:oraclelinux-8
72   - name: oraclelinux-7-master-py3
73     driver:
74       image: saltimages/salt-master-py3:oraclelinux-7
75
76   ## SALT `3003.0`
77   - name: debian-10-3003-0-py3
78     driver:
79       image: saltimages/salt-3003.0-py3:debian-10
80   - name: debian-9-3003-0-py3
81     driver:
82       image: saltimages/salt-3003.0-py3:debian-9
83   - name: ubuntu-2004-3003-0-py3
84     driver:
85       image: saltimages/salt-3003.0-py3:ubuntu-20.04
86   - name: ubuntu-1804-3003-0-py3
87     driver:
88       image: saltimages/salt-3003.0-py3:ubuntu-18.04
89   - name: centos-8-3003-0-py3
90     driver:
91       image: saltimages/salt-3003.0-py3:centos-8
92   - name: centos-7-3003-0-py3
93     driver:
94       image: saltimages/salt-3003.0-py3:centos-7
95   - name: amazonlinux-2-3003-0-py3
96     driver:
97       image: saltimages/salt-3003.0-py3:amazonlinux-2
98   - name: oraclelinux-8-3003-0-py3
99     driver:
100       image: saltimages/salt-3003.0-py3:oraclelinux-8
101   - name: oraclelinux-7-3003-0-py3
102     driver:
103       image: saltimages/salt-3003.0-py3:oraclelinux-7
104
105   ## SALT `3002.6`
106   - name: debian-10-3002-6-py3
107     driver:
108       image: saltimages/salt-3002.6-py3:debian-10
109   - name: debian-9-3002-6-py3
110     driver:
111       image: saltimages/salt-3002.6-py3:debian-9
112   - name: ubuntu-2004-3002-6-py3
113     driver:
114       image: saltimages/salt-3002.6-py3:ubuntu-20.04
115   - name: ubuntu-1804-3002-6-py3
116     driver:
117       image: saltimages/salt-3002.6-py3:ubuntu-18.04
118   - name: ubuntu-1604-3002-6-py3
119     driver:
120       image: saltimages/salt-3002.6-py3:ubuntu-16.04
121   - name: centos-8-3002-6-py3
122     driver:
123       image: saltimages/salt-3002.6-py3:centos-8
124   - name: centos-7-3002-6-py3
125     driver:
126       image: saltimages/salt-3002.6-py3:centos-7
127   - name: amazonlinux-2-3002-6-py3
128     driver:
129       image: saltimages/salt-3002.6-py3:amazonlinux-2
130   - name: oraclelinux-8-3002-6-py3
131     driver:
132       image: saltimages/salt-3002.6-py3:oraclelinux-8
133   - name: oraclelinux-7-3002-6-py3
134     driver:
135       image: saltimages/salt-3002.6-py3:oraclelinux-7
136
137   ## SALT `3001.7`
138   - name: debian-10-3001-7-py3
139     driver:
140       image: saltimages/salt-3001.7-py3:debian-10
141   - name: debian-9-3001-7-py3
142     driver:
143       image: saltimages/salt-3001.7-py3:debian-9
144   - name: ubuntu-2004-3001-7-py3
145     driver:
146       image: saltimages/salt-3001.7-py3:ubuntu-20.04
147   - name: ubuntu-1804-3001-7-py3
148     driver:
149       image: saltimages/salt-3001.7-py3:ubuntu-18.04
150   - name: ubuntu-1604-3001-7-py3
151     driver:
152       image: saltimages/salt-3001.7-py3:ubuntu-16.04
153   - name: centos-8-3001-7-py3
154     driver:
155       image: saltimages/salt-3001.7-py3:centos-8
156   - name: centos-7-3001-7-py3
157     driver:
158       image: saltimages/salt-3001.7-py3:centos-7
159   - name: amazonlinux-2-3001-7-py3
160     driver:
161       image: saltimages/salt-3001.7-py3:amazonlinux-2
162   - name: oraclelinux-8-3001-7-py3
163     driver:
164       image: saltimages/salt-3001.7-py3:oraclelinux-8
165   - name: oraclelinux-7-3001-7-py3
166     driver:
167       image: saltimages/salt-3001.7-py3:oraclelinux-7
168
169   ## SALT `3000.9`
170   - name: debian-10-3000-9-py3
171     driver:
172       image: saltimages/salt-3000.9-py3:debian-10
173   - name: debian-9-3000-9-py3
174     driver:
175       image: saltimages/salt-3000.9-py3:debian-9
176   - name: ubuntu-1804-3000-9-py3
177     driver:
178       image: saltimages/salt-3000.9-py3:ubuntu-18.04
179   - name: ubuntu-1604-3000-9-py3
180     driver:
181       image: saltimages/salt-3000.9-py3:ubuntu-16.04
182   - name: centos-8-3000-9-py3
183     driver:
184       image: saltimages/salt-3000.9-py3:centos-8
185   - name: centos-7-3000-9-py3
186     driver:
187       image: saltimages/salt-3000.9-py3:centos-7
188   - name: amazonlinux-2-3000-9-py3
189     driver:
190       image: saltimages/salt-3000.9-py3:amazonlinux-2
191   - name: oraclelinux-8-3000-9-py3
192     driver:
193       image: saltimages/salt-3000.9-py3:oraclelinux-8
194   - name: oraclelinux-7-3000-9-py3
195     driver:
196       image: saltimages/salt-3000.9-py3:oraclelinux-7
197   - name: ubuntu-1804-3000-9-py2
198     driver:
199       image: saltimages/salt-3000.9-py2:ubuntu-18.04
200   - name: ubuntu-1604-3000-9-py2
201     driver:
202       image: saltimages/salt-3000.9-py2:ubuntu-16.04
203
204 provisioner:
205   name: salt_solo
206   log_level: debug
207   salt_install: none
208   require_chef: false
209   formula: arvados
210   salt_copy_filter:
211     - .kitchen
212     - .git
213
214 verifier:
215   # https://www.inspec.io/
216   name: inspec
217   sudo: true
218   # cli, documentation, html, progress, json, json-min, json-rspec, junit
219   reporter:
220     - cli
221
222 suites:
223   #### api,websocket,keepproxy,keepweb,controller
224   - name: api
225     driver:
226       hostname: fixme.example.net
227     provisioner:
228       dependencies:
229         - name: single_host
230           path: test/salt/states/examples
231         - name: locale
232           repo: git
233           source: https://github.com/saltstack-formulas/locale-formula.git
234         - name: postgres
235           repo: git
236           source: https://github.com/saltstack-formulas/postgres-formula.git
237         - name: nginx
238           repo: git
239           source: https://github.com/saltstack-formulas/nginx-formula.git
240       state_top:
241         base:
242           '*':
243             - arvados._mapdata
244             - single_host.host_entries
245             - single_host.snakeoil_certs
246             - locale
247             - nginx.passenger
248             - postgres
249             - arvados.repo
250             - arvados.api
251             - arvados.websocket
252             - arvados.keepproxy
253             - arvados.keepweb
254             - arvados.controller
255             - arvados.dispatcher
256       pillars:
257         top.sls:
258           base:
259             '*':
260               - arvados
261               - example_locale
262               - example_postgres
263               - example_nginx
264               - example_nginx_api
265               - example_nginx_websocket
266               - example_nginx_keepweb
267               - example_nginx_controller
268               # keepproxy expects to retrieve a list of services from API, so
269               # installing/testing it without an api server running will fail
270               - example_nginx_keepproxy
271       pillars_from_files:
272         # yamllint disable rule:line-length
273         arvados.sls: test/salt/pillar/arvados.sls
274         example_locale.sls: test/salt/pillar/examples/locale.sls
275         example_postgres.sls: test/salt/pillar/examples/postgresql.sls
276         example_nginx.sls: test/salt/pillar/examples/nginx_passenger.sls
277         example_nginx_api.sls: test/salt/pillar/examples/nginx_api_configuration.sls
278         example_nginx_websocket.sls: test/salt/pillar/examples/nginx_websocket_configuration.sls
279         example_nginx_keepweb.sls: test/salt/pillar/examples/nginx_keepweb_configuration.sls
280         example_nginx_keepproxy.sls: test/salt/pillar/examples/nginx_keepproxy_configuration.sls
281         example_nginx_controller.sls: test/salt/pillar/examples/nginx_controller_configuration.sls
282         # yamllint enable rule:line-length
283     verifier:
284       inspec_tests:
285         - path: test/integration/api
286         - path: test/integration/websocket
287         - path: test/integration/keepproxy
288         - path: test/integration/keepweb
289         - path: test/integration/controller
290   #### workbench,workbench2,webshell
291   - name: workbench
292     driver:
293       hostname: workbench.fixme.example.net
294     provisioner:
295       dependencies:
296         - name: single_host
297           path: test/salt/states/examples
298         - name: nginx
299           repo: git
300           source: https://github.com/saltstack-formulas/nginx-formula.git
301       state_top:
302         base:
303           '*':
304             - arvados._mapdata
305             - single_host.host_entries
306             - single_host.snakeoil_certs
307             - nginx.passenger
308             - arvados.repo
309             - arvados.workbench
310             - arvados.workbench2
311       pillars:
312         top.sls:
313           base:
314             '*':
315               - arvados
316               - example_nginx
317               - example_nginx_workbench
318               - example_nginx_workbench2
319               - example_nginx_webshell
320       pillars_from_files:
321         # yamllint disable rule:line-length
322         arvados.sls: test/salt/pillar/arvados.sls
323         example_nginx.sls: test/salt/pillar/examples/nginx_passenger.sls
324         example_nginx_workbench.sls: test/salt/pillar/examples/nginx_workbench_configuration.sls
325         example_nginx_workbench2.sls: test/salt/pillar/examples/nginx_workbench2_configuration.sls
326         example_nginx_webshell.sls: test/salt/pillar/examples/nginx_webshell_configuration.sls
327         # yamllint enable rule:line-length
328     verifier:
329       inspec_tests:
330         - path: test/integration/repo
331         - path: test/integration/workbench
332         - path: test/integration/workbench2
333   #### shell
334   - name: shell
335     driver:
336       hostname: shell.fixme.example.net
337     provisioner:
338       state_top:
339         base:
340           '*':
341             - arvados._mapdata
342             # We also test repo here. No sense for a whole separate suite
343             - arvados.repo
344             - arvados.shell
345       pillars:
346         top.sls:
347           base:
348             '*':
349               - arvados
350       pillars_from_files:
351         arvados.sls: test/salt/pillar/arvados_dev.sls
352     verifier:
353       inspec_tests:
354         - path: test/integration/shell
355   #### keepstore
356   - name: keepstore
357     driver:
358       hostname: keep0.fixme.example.net
359     provisioner:
360       state_top:
361         base:
362           '*':
363             - arvados._mapdata
364             - arvados.repo
365             - arvados.keepstore
366       pillars:
367         top.sls:
368           base:
369             '*':
370               - arvados
371       pillars_from_files:
372         arvados.sls: test/salt/pillar/arvados_dev.sls
373     verifier:
374       inspec_tests:
375         - path: test/integration/keepstore