Formulas testing revision 2019/10

Partial cherry-pick of fixes in c4b6ed93cbcbf8115d1887bd60048524c95f6d20

Related: PROD-32744
Related: PROD-33633
Related: PROD-33634
Related: PROD-33698
Related: PROD-33984

Change-Id: I8bcf38769b69d0677d97f6207a147b6b6786ee4b
diff --git a/.kitchen.yml b/.kitchen.yml
index 0e21280..6e0551b 100644
--- a/.kitchen.yml
+++ b/.kitchen.yml
@@ -8,7 +8,7 @@
   name: salt_solo
   salt_install: bootstrap
   salt_bootstrap_url: https://bootstrap.saltstack.com
-  salt_version: <%=ENV['SALT_VERSION'] || 'latest'%>
+  salt_version: latest
   require_chef: false
   log_level: error
   formula: keystone
@@ -17,77 +17,101 @@
   dependencies:
     - name: linux
       repo: git
-      source: https://github.com/salt-formulas/salt-formula-linux
-    - name: mysql
-      repo: git
-      source: https://github.com/salt-formulas/salt-formula-mysql
+      source: https://gerrit.mcp.mirantis.com/salt-formulas/linux
+      branch: <%=ENV['GERRIT_BRANCH'] || 'release/2019.2.0' %>
     - name: apache
       repo: git
-      source: https://github.com/salt-formulas/salt-formula-apache
+      source: https://gerrit.mcp.mirantis.com/salt-formulas/apache
+      branch: <%=ENV['GERRIT_BRANCH'] || 'release/2019.2.0' %>
     - name: memcached
       repo: git
-      source: https://github.com/salt-formulas/salt-formula-memcached
-    - name: cadf
-      repo: git
-      source: https://github.com/salt-formulas/salt-formula-cadf
+      source: https://gerrit.mcp.mirantis.com/salt-formulas/memcached
+      branch: <%=ENV['GERRIT_BRANCH'] || 'release/2019.2.0' %>
     - name: rabbitmq
       repo: git
-      source: https://github.com/salt-formulas/salt-formula-rabbitmq
+      source: https://gerrit.mcp.mirantis.com/salt-formulas/rabbitmq
+      branch: <%=ENV['GERRIT_BRANCH'] || 'release/2019.2.0' %>
+    - name: oslo_templates
+      repo: git
+      source: https://gerrit.mcp.mirantis.com/salt-formulas/oslo-templates
+      branch: <%=ENV['GERRIT_BRANCH'] || 'release/2019.2.0' %>
+    - name: mysql
+      repo: git
+      source: https://gerrit.mcp.mirantis.com/salt-formulas/mysql
+      branch: <%=ENV['GERRIT_BRANCH'] || 'release/2019.2.0' %>
   state_top:
     base:
       "*":
         - linux
-        - mysql
         - keystone
   pillars:
+    ssl.sls:
+      keystone:
+        server:
+          identity:
+            protocol: https
+          database:
+            x509:
+              enabled: True
+              ca_file: /etc/keystone/ssl/mysql/ca-cert.pem
+              key_file: /etc/keystone/ssl/mysql/client-key.pem
+              cert_file: /etc/keystone/ssl/mysql/client-cert.pem
+              cacert: |
+                -----BEGIN CERTIFICATE-----
+                MIIFzzCCA7egAwIBAgIIe7zZ8hCvkgowDQYJKoZIhvcNAQELBQAwSjELMAkGA1UE
+                -----END CERTIFICATE-----
+              cert: |
+                -----BEGIN CERTIFICATE-----
+                MIIGSjCCBDKgAwIBAgIJAIHRPs2rZbLvMA0GCSqGSIb3DQEBCwUAMEoxCzAJBgNV
+                -----END CERTIFICATE-----
+              key: |
+                -----BEGIN RSA PRIVATE KEY-----
+                MIIJKQIBAAKCAgEAq0m4kOIITliYea07yJnlSRNY0o6NaykiteSfHGauiub4lNQJ
+                -----END RSA PRIVATE KEY-----
+            ssl:
+              enabled: True
+              cacert_file: /etc/keystone/ssl/mysql/ca-cert.pem
+              cacert: |
+                -----BEGIN CERTIFICATE-----
+                MIIFzzCCA7egAwIBAgIIe7zZ8hCvkgowDQYJKoZIhvcNAQELBQAwSjELMAkGA1UE
+                -----END CERTIFICATE-----
+          message_queue:
+            port: 5671
+            ssl:
+              enabled: True
+              cacert_file: /etc/keystone/ssl/mysql/ca-cert.pem
+              cacert: |
+                -----BEGIN CERTIFICATE-----
+                MIIFzzCCA7egAwIBAgIIe7zZ8hCvkgowDQYJKoZIhvcNAQELBQAwSjELMAkGA1UE
+                -----END CERTIFICATE-----
     top.sls:
       base:
         "*":
           - linux_repo_openstack
           - keystone
-          - mysql_platform_specific
-    mysql_platform_specific.sls: {}
-  pillars-from-files:
-    linux_repo_openstack.sls: tests/pillar/repo_mos9.sls
+          - release
 
 verifier:
   name: inspec
   sudo: true
 
+docker_images:
+  - &xenial-20177 <%=ENV['IMAGE_XENIAL_20177'] || 'docker-dev-local.docker.mirantis.net/mirantis/drivetrain/salt-formulas-ci/salt-formulas-ci-xenial-2017.7:latest'%>
+
 platforms:
-  - name: <%=ENV['PLATFORM'] ||  'saltstack-ubuntu-xenial-salt-stable' %>
+  - name: xenial-2017.7
     driver_config:
-      image: <%=ENV['PLATFORM'] || 'epcim/salt-formulas:saltstack-ubuntu-xenial-salt-stable'%>
+      image: *xenial-20177
       platform: ubuntu
-    provisioner:
-      pillars:
-        mysql_platform_specific.sls:
-          mysql:
-            server:
-              # workaround, formula not yet handle platform default version
-              version: "<%=ENV['MYSQL_VERSION'] || '5.7'%>"
 
 suites:
-
-  - name: single
+<% for os_version in ['pike','queens'] %>
+<% for mysql_version in ['5.7'] %>
+  - name: single_<%=mysql_version%>_<%=os_version%>
     provisioner:
       pillars-from-files:
         keystone.sls: tests/pillar/single.sls
-
-  - name: single_domain
-    provisioner:
-      pillars-from-files:
-        keystone.sls: tests/pillar/single_domain.sls
-
-  - name: single_fernet
-    provisioner:
-      pillars-from-files:
-        keystone.sls: tests/pillar/single_fernet.sls
-
-  - name: under-apache
-    provisioner:
-      pillars-from-files:
-        keystone.sls: tests/pillar/apache_wsgi.sls
+        linux_repo_openstack.sls: tests/pillar/repo_mcp_openstack_<%=os_version%>.sls
       state_top:
         base:
           "*":
@@ -95,5 +119,52 @@
             - mysql
             - apache
             - keystone
+      pillars:
+        mysql_platform_specific.sls:
+          mysql:
+            server:
+              version: "<%=mysql_version%>"
+        release.sls:
+            keystone:
+              server:
+                version: <%=os_version%>
+    verifier:
+      inspec_tests:
+        - tests/integration/<%=os_version%>/single
 
+  - name: single_ssl_<%=mysql_version%>_<%=os_version%>
+    provisioner:
+      pillars-from-files:
+        keystone.sls: tests/pillar/single.sls
+        linux_repo_openstack.sls: tests/pillar/repo_mcp_openstack_<%=os_version%>.sls
+      state_top:
+        base:
+          "*":
+            - linux
+            - mysql
+            - apache
+            - keystone
+      pillars:
+        mysql_platform_specific.sls:
+          mysql:
+            server:
+              version: "<%=mysql_version%>"
+        top.sls:
+          base:
+            "*":
+              - linux_repo_openstack
+              - keystone
+              - release
+              - ssl
+        release.sls:
+            keystone:
+              server:
+                version: <%=os_version%>
+    verifier:
+      inspec_tests:
+        - tests/integration/<%=os_version%>/single
+      attributes:
+        ssl: true
+<% end %>
+<% end %>
 # vim: ft=yaml sw=2 ts=2 sts=2 tw=125