forked from arvados/arvados-formula
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathkitchen.yml
186 lines (177 loc) · 5.4 KB
/
kitchen.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
# -*- coding: utf-8 -*-
# vim: ft=yaml
---
# For help on this file's format, see https://kitchen.ci/
driver:
name: docker
use_sudo: false
privileged: true
run_command: /lib/systemd/systemd
# Make sure the platforms listed below match up with
# the `env.matrix` instances defined in `.travis.yml`
platforms:
## SALT `3000.1`
- name: debian-10-3000-1-py3
driver:
image: netmanagers/salt-3000.1-py3:debian-10
# - name: ubuntu-1804-3000-1-py3
# driver:
# image: netmanagers/salt-3000.1-py3:ubuntu-18.04
# ## SALT `2019.2`
# - name: centos-7-2019-2-py3
# driver:
# image: netmanagers/salt-2019.2-py3:centos-7
provisioner:
name: salt_solo
log_level: debug
salt_install: none
require_chef: false
formula: arvados
salt_copy_filter:
- .kitchen
- .git
verifier:
# https://www.inspec.io/
name: inspec
sudo: true
# cli, documentation, html, progress, json, json-min, json-rspec, junit
reporter:
- cli
suites:
#### api,websocket,keepproxy,keepweb,controller
- name: api
driver:
hostname: example.net
provisioner:
state_top:
base:
'*':
- example_add_snakeoil_certs
- nginx.passenger
- postgres
- arvados.repo
- arvados.api
- arvados.websocket
# keepproxy complains when using snakeoil certs, so we can't
# properly test it here until next version removes this limitation
# - arvados.keepproxy
- arvados.keepweb
- arvados.controller
pillars:
top.sls:
base:
'*':
- arvados
- example_postgres
- example_nginx
- example_nginx_api
- example_nginx_websocket
- example_nginx_keepweb
- example_nginx_controller
# keepproxy expects to retrieve a list of services from API, so
# installing/testing it without an api server running will fail
# - example_nginx_keepproxy
pillars_from_files:
arvados.sls: pillar.example
example_postgres.sls: test/salt/pillar/examples/postgresql.sls
example_nginx.sls: test/salt/pillar/examples/nginx_passenger.sls
example_nginx_api.sls: test/salt/pillar/examples/nginx_api_configuration.sls
example_nginx_websocket.sls: test/salt/pillar/examples/nginx_websocket_configuration.sls
example_nginx_keepweb.sls: test/salt/pillar/examples/nginx_keepweb_configuration.sls
# example_nginx_keepproxy.sls: test/salt/pillar/examples/nginx_keepproxy_configuration.sls
example_nginx_controller.sls: test/salt/pillar/examples/nginx_controller_configuration.sls
dependencies:
- name: example_add_snakeoil_certs
path: test/salt/states
- name: postgres
repo: git
source: https://github.com/saltstack-formulas/postgres-formula.git
- name: nginx
repo: git
source: https://github.com/saltstack-formulas/nginx-formula.git
verifier:
inspec_tests:
- path: test/integration/api
- path: test/integration/websocket
# - path: test/integration/keepproxy
- path: test/integration/keepweb
- path: test/integration/controller
#### workbench,workbench2
- name: workbench
driver:
hostname: workbench.example.net
provisioner:
state_top:
base:
'*':
- example_add_snakeoil_certs
- nginx.passenger
- arvados.repo
- arvados.workbench
- arvados.workbench2
pillars:
top.sls:
base:
'*':
- arvados
- example_nginx
- example_nginx_workbench
- example_nginx_workbench2
pillars_from_files:
arvados.sls: pillar.example
example_nginx.sls: test/salt/pillar/examples/nginx_passenger.sls
example_nginx_workbench.sls: test/salt/pillar/examples/nginx_workbench_configuration.sls
example_nginx_workbench2.sls: test/salt/pillar/examples/nginx_workbench2_configuration.sls
dependencies:
- name: example_add_snakeoil_certs
path: test/salt/states
- name: nginx
repo: git
source: https://github.com/saltstack-formulas/nginx-formula.git
verifier:
inspec_tests:
- path: test/integration/workbench
- path: test/integration/workbench2
#### shell
- name: shell
driver:
hostname: shell.example.net
provisioner:
state_top:
base:
'*':
# We also test repo here. No sense for a whole separate suite
- arvados.repo
- arvados.shell
pillars:
top.sls:
base:
'*':
- arvados
pillars_from_files:
arvados.sls: pillar.example
verifier:
inspec_tests:
- path: test/integration/repo
- path: test/integration/shell
#### keepstore
- name: keepstore
driver:
hostname: keep0.example.net
provisioner:
state_top:
base:
'*':
- arvados.repo
- arvados.keepstore.service
# - arvados.clean
pillars:
top.sls:
base:
'*':
- arvados
pillars_from_files:
arvados.sls: pillar.example
verifier:
inspec_tests:
- path: test/integration/keepstore