Merge branch 'fix-rvm-deps-in-centos'
[arvados-formula.git] / kitchen.yml
index 637955e8a20c207eeb82a56053b4f7f46b41a218..8c1086d5a5c78fff2edcae1bb7a820bb2fbd6d6f 100644 (file)
@@ -1,5 +1,9 @@
 # -*- coding: utf-8 -*-
 # vim: ft=yaml
+
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: Apache-2.0
 ---
 # For help on this file's format, see https://kitchen.ci/
 driver:
@@ -8,23 +12,6 @@ driver:
   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.3`
-  - name: debian-10-3000-3-py3
-    driver:
-      image: saltimages/salt-3000.3-py3:debian-10
-
-#   - name: ubuntu-1804-3000-3-py3
-#     driver:
-#       image: saltimages/salt-3000.3-py3:ubuntu-18.04
-
-#   ## SALT `2019.2`
-#   - name: centos-7-2019-2-py3
-#     driver:
-#       image: saltimages/salt-2019.2-py3:centos-7
-
 provisioner:
   name: salt_solo
   log_level: debug
@@ -35,6 +22,91 @@ provisioner:
     - .kitchen
     - .git
 
+platforms:
+  ## SALT `tiamat`
+  - name: debian-10-tiamat-py3
+    driver:
+      image: saltimages/salt-tiamat-py3:debian-10
+  - name: ubuntu-2004-tiamat-py3
+    driver:
+      image: saltimages/salt-tiamat-py3:ubuntu-20.04
+  - name: ubuntu-1804-tiamat-py3
+    driver:
+      image: saltimages/salt-tiamat-py3:ubuntu-18.04
+  - name: centos-7-tiamat-py3
+    driver:
+      image: saltimages/salt-tiamat-py3:centos-7
+
+  ## SALT `master`
+  - name: debian-10-master-py3
+    driver:
+      image: saltimages/salt-master-py3:debian-10
+  - name: ubuntu-2004-master-py3
+    driver:
+      image: saltimages/salt-master-py3:ubuntu-20.04
+  - name: ubuntu-1804-master-py3
+    driver:
+      image: saltimages/salt-master-py3:ubuntu-18.04
+  - name: centos-7-master-py3
+    driver:
+      image: saltimages/salt-master-py3:centos-7
+
+  ## SALT `3003.1`
+  - name: debian-10-3003-1-py3
+    driver:
+      image: saltimages/salt-3003.1-py3:debian-10
+  - name: ubuntu-2004-3003-1-py3
+    driver:
+      image: saltimages/salt-3003.1-py3:ubuntu-20.04
+  - name: ubuntu-1804-3003-1-py3
+    driver:
+      image: saltimages/salt-3003.1-py3:ubuntu-18.04
+  - name: centos-7-3003-1-py3
+    driver:
+      image: saltimages/salt-3003.1-py3:centos-7
+
+  ## SALT `3002.6`
+  - name: debian-10-3002-6-py3
+    driver:
+      image: saltimages/salt-3002.6-py3:debian-10
+  - name: ubuntu-2004-3002-6-py3
+    driver:
+      image: saltimages/salt-3002.6-py3:ubuntu-20.04
+  - name: ubuntu-1804-3002-6-py3
+    driver:
+      image: saltimages/salt-3002.6-py3:ubuntu-18.04
+  - name: centos-7-3002-6-py3
+    driver:
+      image: saltimages/salt-3002.6-py3:centos-7
+
+  ## SALT `3001.7`
+  - name: debian-10-3001-7-py3
+    driver:
+      image: saltimages/salt-3001.7-py3:debian-10
+  - name: ubuntu-2004-3001-7-py3
+    driver:
+      image: saltimages/salt-3001.7-py3:ubuntu-20.04
+  - name: ubuntu-1804-3001-7-py3
+    driver:
+      image: saltimages/salt-3001.7-py3:ubuntu-18.04
+  - name: centos-7-3001-7-py3
+    driver:
+      image: saltimages/salt-3001.7-py3:centos-7
+
+  ## SALT `3000.9`
+  - name: debian-10-3000-9-py3
+    driver:
+      image: saltimages/salt-3000.9-py3:debian-10
+  - name: ubuntu-1804-3000-9-py3
+    driver:
+      image: saltimages/salt-3000.9-py3:ubuntu-18.04
+  - name: centos-7-3000-9-py3
+    driver:
+      image: saltimages/salt-3000.9-py3:centos-7
+  - name: ubuntu-1804-3000-9-py2
+    driver:
+      image: saltimages/salt-3000.9-py2:ubuntu-18.04
+
 verifier:
   # https://www.inspec.io/
   name: inspec
@@ -47,27 +119,42 @@ suites:
   #### api,websocket,keepproxy,keepweb,controller
   - name: api
     driver:
-      hostname: example.net
+      hostname: fixme.example.net
     provisioner:
+      dependencies:
+        - name: single_host
+          path: test/salt/states/examples
+        - name: locale
+          repo: git
+          source: https://github.com/saltstack-formulas/locale-formula.git
+        - 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
       state_top:
         base:
           '*':
-            - example_add_snakeoil_certs
+            - arvados._mapdata
+            - single_host.host_entries
+            - single_host.snakeoil_certs
+            - locale
             - 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.keepproxy
             - arvados.keepweb
             - arvados.controller
+            - arvados.dispatcher
       pillars:
         top.sls:
           base:
             '*':
               - arvados
+              - example_locale
               - example_postgres
               - example_nginx
               - example_nginx_api
@@ -76,44 +163,43 @@ suites:
               - 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
+              - example_nginx_keepproxy
       pillars_from_files:
         # yamllint disable rule:line-length
-        arvados.sls: pillar.example
+        arvados.sls: test/salt/pillar/arvados.sls
+        example_locale.sls: test/salt/pillar/examples/locale.sls
         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_keepproxy.sls: test/salt/pillar/examples/nginx_keepproxy_configuration.sls
         example_nginx_controller.sls: test/salt/pillar/examples/nginx_controller_configuration.sls
         # yamllint enable rule:line-length
-      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/keepproxy
         - path: test/integration/keepweb
         - path: test/integration/controller
-
-  #### workbench,workbench2
+  #### workbench,workbench2,webshell
   - name: workbench
     driver:
-      hostname: workbench.example.net
+      hostname: workbench.fixme.example.net
     provisioner:
+      dependencies:
+        - name: single_host
+          path: test/salt/states/examples
+        - name: nginx
+          repo: git
+          source: https://github.com/saltstack-formulas/nginx-formula.git
       state_top:
         base:
           '*':
-            - example_add_snakeoil_certs
+            - arvados._mapdata
+            - single_host.host_entries
+            - single_host.snakeoil_certs
             - nginx.passenger
             - arvados.repo
             - arvados.workbench
@@ -126,32 +212,29 @@ suites:
               - example_nginx
               - example_nginx_workbench
               - example_nginx_workbench2
+              - example_nginx_webshell
       pillars_from_files:
         # yamllint disable rule:line-length
-        arvados.sls: pillar.example
+        arvados.sls: test/salt/pillar/arvados.sls
         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
+        example_nginx_webshell.sls: test/salt/pillar/examples/nginx_webshell_configuration.sls
         # yamllint enable rule:line-length
-      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/repo
         - path: test/integration/workbench
         - path: test/integration/workbench2
-
   #### shell
   - name: shell
     driver:
-      hostname: shell.example.net
+      hostname: shell.fixme.example.net
     provisioner:
       state_top:
         base:
           '*':
+            - arvados._mapdata
             # We also test repo here. No sense for a whole separate suite
             - arvados.repo
             - arvados.shell
@@ -161,30 +244,28 @@ suites:
             '*':
               - arvados
       pillars_from_files:
-        arvados.sls: pillar.example
+        arvados.sls: test/salt/pillar/arvados_dev.sls
     verifier:
       inspec_tests:
-        - path: test/integration/repo
         - path: test/integration/shell
-
   #### keepstore
   - name: keepstore
     driver:
-      hostname: keep0.example.net
+      hostname: keep0.fixme.example.net
     provisioner:
       state_top:
         base:
           '*':
+            - arvados._mapdata
             - arvados.repo
-            - arvados.keepstore.service
-            # - arvados.clean
+            - arvados.keepstore
       pillars:
         top.sls:
           base:
             '*':
               - arvados
       pillars_from_files:
-        arvados.sls: pillar.example
+        arvados.sls: test/salt/pillar/arvados_dev.sls
     verifier:
       inspec_tests:
         - path: test/integration/keepstore