Merge branch '18631-shell-login-sync'
[arvados-formula.git] / kitchen.yml
index ff0d8c0ac900caa03f40b4d1078806d86332479b..0b3dcd6285915d214fbb9f9efcf73a22a4d42e1f 100644 (file)
@@ -1,5 +1,9 @@
 # -*- coding: utf-8 -*-
 # vim: ft=yaml
 # -*- 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:
 ---
 # For help on this file's format, see https://kitchen.ci/
 driver:
@@ -8,23 +12,6 @@ driver:
   privileged: true
   run_command: /lib/systemd/systemd
 
   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
 provisioner:
   name: salt_solo
   log_level: debug
@@ -35,6 +22,89 @@ provisioner:
     - .kitchen
     - .git
 
     - .kitchen
     - .git
 
+platforms:
+  ## SALT `tiamat`
+  - name: debian-11-tiamat-py3
+    driver:
+      image: saltimages/salt-tiamat-py3:debian-11
+  - 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-11-master-py3
+    driver:
+      image: saltimages/salt-master-py3:debian-11
+  - 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 `3004.1`
+  - name: debian-11-3004.1-py3
+    driver:
+      image: saltimages/salt-3004.1-py3:debian-11
+  - name: debian-10-3004.1-py3
+    driver:
+      image: saltimages/salt-3004.1-py3:debian-10
+  - name: ubuntu-2004-3004.1-py3
+    driver:
+      image: saltimages/salt-3004.1-py3:ubuntu-20.04
+  - name: ubuntu-1804-3004.1-py3
+    driver:
+      image: saltimages/salt-3004.1-py3:ubuntu-18.04
+  - name: centos-7-3004.1-py3
+    driver:
+      image: saltimages/salt-3004.1-py3:centos-7
+
+  ## SALT `3003.4`
+  - name: debian-11-3003.4-py3
+    driver:
+      image: saltimages/salt-3003.4-py3:debian-11
+  - name: debian-10-3003.4-py3
+    driver:
+      image: saltimages/salt-3003.4-py3:debian-10
+  - name: ubuntu-2004-3003.4-py3
+    driver:
+      image: saltimages/salt-3003.4-py3:ubuntu-20.04
+  - name: ubuntu-1804-3003.4-py3
+    driver:
+      image: saltimages/salt-3003.4-py3:ubuntu-18.04
+  - name: centos-7-3003.4-py3
+    driver:
+      image: saltimages/salt-3003.4-py3:centos-7
+
+  ## SALT `3002.8`
+  - name: debian-10-3002.8-py3
+    driver:
+      image: saltimages/salt-3002.8-py3:debian-10
+  - name: ubuntu-2004-3002.8-py3
+    driver:
+      image: saltimages/salt-3002.8-py3:ubuntu-20.04
+  - name: ubuntu-1804-3002.8-py3
+    driver:
+      image: saltimages/salt-3002.8-py3:ubuntu-18.04
+  - name: centos-7-3002.8-py3
+    driver:
+      image: saltimages/salt-3002.8-py3:centos-7
+
 verifier:
   # https://www.inspec.io/
   name: inspec
 verifier:
   # https://www.inspec.io/
   name: inspec
@@ -47,27 +117,44 @@ suites:
   #### api,websocket,keepproxy,keepweb,controller
   - name: api
     driver:
   #### api,websocket,keepproxy,keepweb,controller
   - name: api
     driver:
-      hostname: example.net
+      hostname: fixme.example.net
     provisioner:
     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:
           '*':
       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
             - 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.keepweb
             - arvados.controller
+            - arvados.dispatcher
+            - arvados.keepbalance
+            - arvados.shell.resources.virtual_machines
       pillars:
         top.sls:
           base:
             '*':
               - arvados
       pillars:
         top.sls:
           base:
             '*':
               - arvados
+              - example_locale
               - example_postgres
               - example_nginx
               - example_nginx_api
               - example_postgres
               - example_nginx
               - example_nginx_api
@@ -76,42 +163,44 @@ 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_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:
       pillars_from_files:
-        arvados.sls: pillar.example
+        # yamllint disable rule:line-length
+        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_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
         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
+        # yamllint enable rule:line-length
     verifier:
       inspec_tests:
         - path: test/integration/api
         - path: test/integration/websocket
     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
         - path: test/integration/keepweb
         - path: test/integration/controller
-
-  #### workbench,workbench2
+        - path: test/integration/keepbalance
+  #### workbench,workbench2,webshell
   - name: workbench
     driver:
   - name: workbench
     driver:
-      hostname: workbench.example.net
+      hostname: workbench.fixme.example.net
     provisioner:
     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:
           '*':
       state_top:
         base:
           '*':
-            - example_add_snakeoil_certs
+            - arvados._mapdata
+            - single_host.host_entries
+            - single_host.snakeoil_certs
             - nginx.passenger
             - arvados.repo
             - arvados.workbench
             - nginx.passenger
             - arvados.repo
             - arvados.workbench
@@ -124,30 +213,29 @@ suites:
               - example_nginx
               - example_nginx_workbench
               - example_nginx_workbench2
               - example_nginx
               - example_nginx_workbench
               - example_nginx_workbench2
+              - example_nginx_webshell
       pillars_from_files:
       pillars_from_files:
-        arvados.sls: pillar.example
+        # yamllint disable rule:line-length
+        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.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
+        example_nginx_webshell.sls: test/salt/pillar/examples/nginx_webshell_configuration.sls
+        # yamllint enable rule:line-length
     verifier:
       inspec_tests:
     verifier:
       inspec_tests:
+        - path: test/integration/repo
         - path: test/integration/workbench
         - path: test/integration/workbench2
         - path: test/integration/workbench
         - path: test/integration/workbench2
-
   #### shell
   - name: shell
     driver:
   #### shell
   - name: shell
     driver:
-      hostname: shell.example.net
+      hostname: shell.fixme.example.net
     provisioner:
       state_top:
         base:
           '*':
     provisioner:
       state_top:
         base:
           '*':
+            - arvados._mapdata
             # We also test repo here. No sense for a whole separate suite
             - arvados.repo
             - arvados.shell
             # We also test repo here. No sense for a whole separate suite
             - arvados.repo
             - arvados.shell
@@ -157,30 +245,28 @@ suites:
             '*':
               - arvados
       pillars_from_files:
             '*':
               - arvados
       pillars_from_files:
-        arvados.sls: pillar.example
+        arvados.sls: test/salt/pillar/arvados_dev.sls
     verifier:
       inspec_tests:
     verifier:
       inspec_tests:
-        - path: test/integration/repo
         - path: test/integration/shell
         - path: test/integration/shell
-
   #### keepstore
   - name: keepstore
     driver:
   #### keepstore
   - name: keepstore
     driver:
-      hostname: keep0.example.net
+      hostname: keep0.fixme.example.net
     provisioner:
       state_top:
         base:
           '*':
     provisioner:
       state_top:
         base:
           '*':
+            - arvados._mapdata
             - arvados.repo
             - arvados.repo
-            - arvados.keepstore.service
-            # - arvados.clean
+            - arvados.keepstore
       pillars:
         top.sls:
           base:
             '*':
               - arvados
       pillars_from_files:
       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
     verifier:
       inspec_tests:
         - path: test/integration/keepstore