Lint code
[arvados-formula.git] / kitchen.yml
1 # -*- coding: utf-8 -*-
2 # vim: ft=yaml
3
4 # Copyright (C) The Arvados Authors. All rights reserved.
5 #
6 # SPDX-License-Identifier: Apache-2.0
7 ---
8 # For help on this file's format, see https://kitchen.ci/
9 driver:
10   name: docker
11   use_sudo: false
12   privileged: true
13   run_command: /lib/systemd/systemd
14
15 provisioner:
16   name: salt_solo
17   log_level: debug
18   salt_install: none
19   require_chef: false
20   formula: arvados
21   salt_copy_filter:
22     - .kitchen
23     - .git
24
25 platforms:
26   ## SALT `tiamat`
27   - name: debian-11-tiamat-py3
28     driver:
29       image: saltimages/salt-tiamat-py3:debian-11
30   - name: debian-10-tiamat-py3
31     driver:
32       image: saltimages/salt-tiamat-py3:debian-10
33   - name: ubuntu-2004-tiamat-py3
34     driver:
35       image: saltimages/salt-tiamat-py3:ubuntu-20.04
36   - name: ubuntu-1804-tiamat-py3
37     driver:
38       image: saltimages/salt-tiamat-py3:ubuntu-18.04
39   - name: centos-7-tiamat-py3
40     driver:
41       image: saltimages/salt-tiamat-py3:centos-7
42
43   ## SALT `master`
44   - name: debian-11-master-py3
45     driver:
46       image: saltimages/salt-master-py3:debian-11
47   - name: debian-10-master-py3
48     driver:
49       image: saltimages/salt-master-py3:debian-10
50   - name: ubuntu-2004-master-py3
51     driver:
52       image: saltimages/salt-master-py3:ubuntu-20.04
53   - name: ubuntu-1804-master-py3
54     driver:
55       image: saltimages/salt-master-py3:ubuntu-18.04
56   - name: centos-7-master-py3
57     driver:
58       image: saltimages/salt-master-py3:centos-7
59
60   ## SALT `3003.1`
61   - name: debian-11-3003-1-py3
62     driver:
63       image: saltimages/salt-3003.1-py3:debian-11
64   - name: debian-10-3003-1-py3
65     driver:
66       image: saltimages/salt-3003.1-py3:debian-10
67   - name: ubuntu-2004-3003-1-py3
68     driver:
69       image: saltimages/salt-3003.1-py3:ubuntu-20.04
70   - name: ubuntu-1804-3003-1-py3
71     driver:
72       image: saltimages/salt-3003.1-py3:ubuntu-18.04
73   - name: centos-7-3003-1-py3
74     driver:
75       image: saltimages/salt-3003.1-py3:centos-7
76
77   ## SALT `3002.6`
78   - name: debian-11-3002-6-py3
79     driver:
80       image: saltimages/salt-3002.6-py3:debian-11
81   - name: debian-10-3002-6-py3
82     driver:
83       image: saltimages/salt-3002.6-py3:debian-10
84   - name: ubuntu-2004-3002-6-py3
85     driver:
86       image: saltimages/salt-3002.6-py3:ubuntu-20.04
87   - name: ubuntu-1804-3002-6-py3
88     driver:
89       image: saltimages/salt-3002.6-py3:ubuntu-18.04
90   - name: centos-7-3002-6-py3
91     driver:
92       image: saltimages/salt-3002.6-py3:centos-7
93
94   ## SALT `3001.7`
95   - name: debian-10-3001-7-py3
96     driver:
97       image: saltimages/salt-3001.7-py3:debian-10
98   - name: ubuntu-2004-3001-7-py3
99     driver:
100       image: saltimages/salt-3001.7-py3:ubuntu-20.04
101   - name: ubuntu-1804-3001-7-py3
102     driver:
103       image: saltimages/salt-3001.7-py3:ubuntu-18.04
104   - name: centos-7-3001-7-py3
105     driver:
106       image: saltimages/salt-3001.7-py3:centos-7
107
108   ## SALT `3000.9`
109   - name: debian-10-3000-9-py3
110     driver:
111       image: saltimages/salt-3000.9-py3:debian-10
112   - name: ubuntu-1804-3000-9-py3
113     driver:
114       image: saltimages/salt-3000.9-py3:ubuntu-18.04
115   - name: centos-7-3000-9-py3
116     driver:
117       image: saltimages/salt-3000.9-py3:centos-7
118   - name: ubuntu-1804-3000-9-py2
119     driver:
120       image: saltimages/salt-3000.9-py2:ubuntu-18.04
121
122 verifier:
123   # https://www.inspec.io/
124   name: inspec
125   sudo: true
126   # cli, documentation, html, progress, json, json-min, json-rspec, junit
127   reporter:
128     - cli
129
130 suites:
131   #### api,websocket,keepproxy,keepweb,controller
132   - name: api
133     driver:
134       hostname: fixme.example.net
135     provisioner:
136       dependencies:
137         - name: single_host
138           path: test/salt/states/examples
139         - name: locale
140           repo: git
141           source: https://github.com/saltstack-formulas/locale-formula.git
142         - name: postgres
143           repo: git
144           source: https://github.com/saltstack-formulas/postgres-formula.git
145         - name: nginx
146           repo: git
147           source: https://github.com/saltstack-formulas/nginx-formula.git
148       state_top:
149         base:
150           '*':
151             - arvados._mapdata
152             - single_host.host_entries
153             - single_host.snakeoil_certs
154             - locale
155             - nginx.passenger
156             - postgres
157             - arvados.repo
158             - arvados.api
159             - arvados.websocket
160             - arvados.keepproxy
161             - arvados.keepweb
162             - arvados.controller
163             - arvados.dispatcher
164       pillars:
165         top.sls:
166           base:
167             '*':
168               - arvados
169               - example_locale
170               - example_postgres
171               - example_nginx
172               - example_nginx_api
173               - example_nginx_websocket
174               - example_nginx_keepweb
175               - example_nginx_controller
176               # keepproxy expects to retrieve a list of services from API, so
177               # installing/testing it without an api server running will fail
178               - example_nginx_keepproxy
179       pillars_from_files:
180         # yamllint disable rule:line-length
181         arvados.sls: test/salt/pillar/arvados.sls
182         example_locale.sls: test/salt/pillar/examples/locale.sls
183         example_postgres.sls: test/salt/pillar/examples/postgresql.sls
184         example_nginx.sls: test/salt/pillar/examples/nginx_passenger.sls
185         example_nginx_api.sls: test/salt/pillar/examples/nginx_api_configuration.sls
186         example_nginx_websocket.sls: test/salt/pillar/examples/nginx_websocket_configuration.sls
187         example_nginx_keepweb.sls: test/salt/pillar/examples/nginx_keepweb_configuration.sls
188         example_nginx_keepproxy.sls: test/salt/pillar/examples/nginx_keepproxy_configuration.sls
189         example_nginx_controller.sls: test/salt/pillar/examples/nginx_controller_configuration.sls
190         # yamllint enable rule:line-length
191     verifier:
192       inspec_tests:
193         - path: test/integration/api
194         - path: test/integration/websocket
195         - path: test/integration/keepproxy
196         - path: test/integration/keepweb
197         - path: test/integration/controller
198   #### workbench,workbench2,webshell
199   - name: workbench
200     driver:
201       hostname: workbench.fixme.example.net
202     provisioner:
203       dependencies:
204         - name: single_host
205           path: test/salt/states/examples
206         - name: nginx
207           repo: git
208           source: https://github.com/saltstack-formulas/nginx-formula.git
209       state_top:
210         base:
211           '*':
212             - arvados._mapdata
213             - single_host.host_entries
214             - single_host.snakeoil_certs
215             - nginx.passenger
216             - arvados.repo
217             - arvados.workbench
218             - arvados.workbench2
219       pillars:
220         top.sls:
221           base:
222             '*':
223               - arvados
224               - example_nginx
225               - example_nginx_workbench
226               - example_nginx_workbench2
227               - example_nginx_webshell
228       pillars_from_files:
229         # yamllint disable rule:line-length
230         arvados.sls: test/salt/pillar/arvados.sls
231         example_nginx.sls: test/salt/pillar/examples/nginx_passenger.sls
232         example_nginx_workbench.sls: test/salt/pillar/examples/nginx_workbench_configuration.sls
233         example_nginx_workbench2.sls: test/salt/pillar/examples/nginx_workbench2_configuration.sls
234         example_nginx_webshell.sls: test/salt/pillar/examples/nginx_webshell_configuration.sls
235         # yamllint enable rule:line-length
236     verifier:
237       inspec_tests:
238         - path: test/integration/repo
239         - path: test/integration/workbench
240         - path: test/integration/workbench2
241   #### shell
242   - name: shell
243     driver:
244       hostname: shell.fixme.example.net
245     provisioner:
246       state_top:
247         base:
248           '*':
249             - arvados._mapdata
250             # We also test repo here. No sense for a whole separate suite
251             - arvados.repo
252             - arvados.shell
253       pillars:
254         top.sls:
255           base:
256             '*':
257               - arvados
258       pillars_from_files:
259         arvados.sls: test/salt/pillar/arvados_dev.sls
260     verifier:
261       inspec_tests:
262         - path: test/integration/shell
263   #### keepstore
264   - name: keepstore
265     driver:
266       hostname: keep0.fixme.example.net
267     provisioner:
268       state_top:
269         base:
270           '*':
271             - arvados._mapdata
272             - arvados.repo
273             - arvados.keepstore
274       pillars:
275         top.sls:
276           base:
277             '*':
278               - arvados
279       pillars_from_files:
280         arvados.sls: test/salt/pillar/arvados_dev.sls
281     verifier:
282       inspec_tests:
283         - path: test/integration/keepstore