Merge "Add AZ to instances and image/server to volumes" into release/2019.2.0
diff --git a/.kitchen.yml b/.kitchen.yml
index 042c12e..65e5643 100644
--- a/.kitchen.yml
+++ b/.kitchen.yml
@@ -18,9 +18,11 @@
     - name: linux
       repo: git
       source: https://gerrit.mcp.mirantis.com/salt-formulas/linux
+      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' %>
   state_top:
     base:
       "*":
@@ -33,99 +35,99 @@
           - linux_repo_openstack
           - ceilometer
           - release
-  pillars-from-files:
-    linux_repo_openstack.sls: tests/pillar/repo_mcp_openstack_<%= ENV['OS_VERSION'] || 'pike' %>.sls
 
 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
 
 suites:
-
-  - name: agent_cluster
+<% for os_version in ['pike', 'queens'] %>
+  - name: agent_cluster_<%=os_version%>
     provisioner:
       pillars-from-files:
         ceilometer.sls: tests/pillar/agent_cluster.sls
+        linux_repo_openstack.sls: tests/pillar/repo_mcp_openstack_<%=os_version%>.sls
       pillars:
         release.sls:
           ceilometer:
             agent:
-              version: <%= ENV['OS_VERSION'] || 'pike' %>
+              version: <%=os_version%>
 
-  - name: agent_single
+  - name: agent_single_<%=os_version%>
     provisioner:
       pillars-from-files:
         ceilometer.sls: tests/pillar/agent_single.sls
+        linux_repo_openstack.sls: tests/pillar/repo_mcp_openstack_<%=os_version%>.sls
       pillars:
         release.sls:
           ceilometer:
             agent:
-              version: <%= ENV['OS_VERSION'] || 'pike' %>
+              version: <%=os_version%>
 
-  - name: agent_single_odl
+  - name: agent_single_odl_<%=os_version%>
     provisioner:
       pillars-from-files:
         ceilometer.sls: tests/pillar/agent_single_odl.sls
+        linux_repo_openstack.sls: tests/pillar/repo_mcp_openstack_<%=os_version%>.sls
       pillars:
         release.sls:
           ceilometer:
             agent:
-              version: <%= ENV['OS_VERSION'] || 'pike' %>
+              version: <%=os_version%>
 
-  - name: server_cluster
+  - name: server_cluster_<%=os_version%>
     provisioner:
       pillars-from-files:
         ceilometer.sls: tests/pillar/server_cluster.sls
+        linux_repo_openstack.sls: tests/pillar/repo_mcp_openstack_<%=os_version%>.sls
       pillars:
         release.sls:
           ceilometer:
             server:
-              version: <%= ENV['OS_VERSION'] || 'pike' %>
+              version: <%=os_version%>
 
-  - name: server_gnocchi_cluster
+  - name: server_gnocchi_cluster_<%=os_version%>
     provisioner:
       pillars-from-files:
         ceilometer.sls: tests/pillar/server_gnocchi_cluster.sls
+        linux_repo_openstack.sls: tests/pillar/repo_mcp_openstack_<%=os_version%>.sls
       pillars:
         release.sls:
           ceilometer:
             server:
-              version: <%= ENV['OS_VERSION'] || 'pike' %>
+              version: <%=os_version%>
 
-  - name: server_single
+  - name: server_single_<%=os_version%>
     provisioner:
       pillars-from-files:
         ceilometer.sls: tests/pillar/server_single.sls
+        linux_repo_openstack.sls: tests/pillar/repo_mcp_openstack_<%=os_version%>.sls
       pillars:
         release.sls:
           ceilometer:
             server:
-              version: <%= ENV['OS_VERSION'] || 'pike' %>
+              version: <%=os_version%>
 
-  - name: server_cluster_ssl
+  - name: server_cluster_ssl_<%=os_version%>
     provisioner:
       pillars-from-files:
         ceilometer.sls: tests/pillar/server_cluster.sls
+        linux_repo_openstack.sls: tests/pillar/repo_mcp_openstack_<%=os_version%>.sls
+        ssl.sls: tests/pillar/_ssl_server.sls
       pillars:
         release.sls:
           ceilometer:
             server:
-              version: <%= ENV['OS_VERSION'] || 'pike' %>
-        ssl.sls:
-          ceilometer:
-            server:
-              identity:
-                protocol: https
-              message_queue:
-                port: 5671
-                ssl:
-                  enabled: True
+              version: <%=os_version%>
         top.sls:
           base:
             "*":
@@ -134,24 +136,17 @@
               - release
               - ssl
 
-  - name: server_gnocchi_cluster_ssl
+  - name: server_gnocchi_cluster_ssl_<%=os_version%>
     provisioner:
       pillars-from-files:
         ceilometer.sls: tests/pillar/server_gnocchi_cluster.sls
+        linux_repo_openstack.sls: tests/pillar/repo_mcp_openstack_<%=os_version%>.sls
+        ssl.sls: tests/pillar/_ssl_server.sls
       pillars:
         release.sls:
           ceilometer:
             server:
-              version: <%= ENV['OS_VERSION'] || 'pike' %>
-        ssl.sls:
-          ceilometer:
-            server:
-              identity:
-                protocol: https
-              message_queue:
-                port: 5671
-                ssl:
-                  enabled: True
+              version: <%=os_version%>
         top.sls:
           base:
             "*":
@@ -160,24 +155,17 @@
               - release
               - ssl
 
-  - name: agent_cluster_ssl
+  - name: agent_cluster_ssl_<%=os_version%>
     provisioner:
       pillars-from-files:
         ceilometer.sls: tests/pillar/agent_cluster.sls
+        linux_repo_openstack.sls: tests/pillar/repo_mcp_openstack_<%=os_version%>.sls
+        ssl.sls: tests/pillar/_ssl_agent.sls
       pillars:
         release.sls:
           ceilometer:
             agent:
-              version: <%= ENV['OS_VERSION'] || 'pike' %>
-        ssl.sls:
-          ceilometer:
-            agent:
-              identity:
-                protocol: https
-              message_queue:
-                port: 5671
-                ssl:
-                  enabled: True
+              version: <%=os_version%>
         top.sls:
           base:
             "*":
@@ -185,5 +173,6 @@
               - ceilometer
               - release
               - ssl
+<% end %>
 
 # vim: ft=yaml sw=2 ts=2 sts=2 tw=125
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 8f3dd7d..0000000
--- a/.travis.yml
+++ /dev/null
@@ -1,56 +0,0 @@
-language: python
-python:
-- "2.7.13"
-sudo: required
-services:
-  - docker
-
-install:
-  - pip install PyYAML
-  - pip install virtualenv
-  - |
-    if [ ! -e Gemfile ]; then
-      curl -s -o ./Gemfile 'https://gerrit.mcp.mirantis.com/gitweb?p=salt-formulas/salt-formulas-scripts.git;a=blob_plain;f=Gemfile;hb=refs/heads/master'
-    fi
-  - bundle install
-
-env:
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=newton SUITE=agent_cluster
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=newton SUITE=agent_single
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=newton SUITE=server_cluster
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=newton SUITE=server_single
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=mitaka SUITE=agent_cluster
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=mitaka SUITE=agent_single
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=mitaka SUITE=server_cluster
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=mitaka SUITE=server_single
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=ocata SUITE=agent_cluster
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=ocata SUITE=agent_single
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=pike SUITE=agent_cluster
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=pike SUITE=agent_single
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=ocata SUITE=server_cluster
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=pike SUITE=server_gnocchi_cluster
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=ocata SUITE=server_single
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=pike SUITE=server_cluster
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=pike SUITE=server_single
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=pike SUITE=server_cluster_ssl
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=pike SUITE=server_gnocchi_cluster_ssl
-    - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OS_VERSION=pike SUITE=agent_cluster_ssl
-
-before_script:
-  - set -o pipefail
-  - make test | tail
-
-script:
-  - test ! -e .kitchen.yml || bundle exec kitchen converge ${SUITE} || true
-  - test ! -e .kitchen.yml || bundle exec kitchen verify ${SUITE} -t tests/integration
-
-notifications:
-  webhooks:
-    urls:
-      - https://webhooks.gitter.im/e/6123573504759330786b
-    on_success: change  # options: [always|never|change] default: always
-    on_failure: never  # options: [always|never|change] default: always
-    on_start: never     # options: [always|never|change] default: always
-    on_cancel: never    # options: [always|never|change] default: always
-    on_error: never    # options: [always|never|change] default: always
-  email: false
diff --git a/tests/pillar/_ssl_agent.sls b/tests/pillar/_ssl_agent.sls
new file mode 100644
index 0000000..08fa0c5
--- /dev/null
+++ b/tests/pillar/_ssl_agent.sls
@@ -0,0 +1,16 @@
+ceilometer:
+  agent:
+    enabled: true
+    version: pike
+    identity:
+      protocol: https
+    message_queue:
+      port: 5671
+      ssl:
+        enabled: true
+        version: '2.1'
+        cacert_file: /etc/ceilometer/cacert.pem
+        cacert: |
+          -----BEGIN CERTIFICATE-----
+          MIIFzzCCA7egAwIBAgIIe7zZ8hCvkgowDQYJKoZIhvcNAQELBQAwSjELMAkGA1UE
+          -----END CERTIFICATE-----
\ No newline at end of file
diff --git a/tests/pillar/_ssl_server.sls b/tests/pillar/_ssl_server.sls
new file mode 100644
index 0000000..ab722b4
--- /dev/null
+++ b/tests/pillar/_ssl_server.sls
@@ -0,0 +1,31 @@
+ceilometer:
+  server:
+    enabled: true
+    version: pike
+    identity:
+      protocol: https
+      engine: keystone
+      host: 127.0.0.1
+      port: 35357
+      tenant: service
+      user: ceilometer
+      password: password
+      endpoint_type: internalURL
+    bind:
+      host: 127.0.0.1
+      port: 8777
+    ttl: 86400
+    message_queue:
+      host: 127.0.0.1
+      port: 5671
+      user: openstack
+      password: password
+      virtual_host: '/openstack'
+      ssl:
+        enabled: true
+        version: '2.1'
+        cacert_file: /etc/ceilometer/cacert.pem
+        cacert: |
+          -----BEGIN CERTIFICATE-----
+          MIIFzzCCA7egAwIBAgIIe7zZ8hCvkgowDQYJKoZIhvcNAQELBQAwSjELMAkGA1UE
+          -----END CERTIFICATE-----
\ No newline at end of file
diff --git a/tests/pillar/repo_mcp_openstack_mitaka.sls b/tests/pillar/repo_mcp_openstack_mitaka.sls
deleted file mode 100644
index ea24305..0000000
--- a/tests/pillar/repo_mcp_openstack_mitaka.sls
+++ /dev/null
@@ -1,44 +0,0 @@
-linux:
-  system:
-    enabled: true
-    repo:
-      mirantis_openstack_repo:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/mitaka/{{ grains.get('oscodename') }} mitaka main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/mitaka/{{ grains.get('oscodename') }}/archive-mcpmitaka.key"
-        pin:
-        - pin: 'release a=mitaka'
-          priority: 1050
-          package: '*'
-      mirantis_openstack_hotfix:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/mitaka/{{ grains.get('oscodename') }} mitaka-hotfix main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/mitaka/{{ grains.get('oscodename') }}/archive-mcpmitaka.key"
-        pin:
-        - pin: 'release a=mitaka-hotfix'
-          priority: 1050
-          package: '*'
-      mirantis_openstack_security:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/mitaka/{{ grains.get('oscodename') }} mitaka-security main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/mitaka/{{ grains.get('oscodename') }}/archive-mcpmitaka.key"
-        pin:
-        - pin: 'release a=mitaka-security'
-          priority: 1050
-          package: '*'
-      mirantis_openstack_updates:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/mitaka/{{ grains.get('oscodename') }} mitaka-updates main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/mitaka/{{ grains.get('oscodename') }}/archive-mcpmitaka.key"
-        pin:
-        - pin: 'release a=mitaka-uptades'
-          priority: 1050
-          package: '*'
-      mirantis_openstack_holdback:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/mitaka/{{ grains.get('oscodename') }} mitaka-holdback main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/mitaka/{{ grains.get('oscodename') }}/archive-mcpmitaka.key"
-        pin:
-        - pin: 'release a=mitaka-holdback'
-          priority: 1050
-          package: '*'
diff --git a/tests/pillar/repo_mcp_openstack_newton.sls b/tests/pillar/repo_mcp_openstack_newton.sls
deleted file mode 100644
index 2bdfb69..0000000
--- a/tests/pillar/repo_mcp_openstack_newton.sls
+++ /dev/null
@@ -1,44 +0,0 @@
-linux:
-  system:
-    enabled: true
-    repo:
-      mirantis_openstack_repo:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/newton/{{ grains.get('oscodename') }} newton main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/newton/{{ grains.get('oscodename') }}/archive-mcpnewton.key"
-        pin:
-        - pin: 'release a=newton'
-          priority: 1050
-          package: '*'
-      mirantis_openstack_hotfix:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/newton/{{ grains.get('oscodename') }} newton-hotfix main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/newton/{{ grains.get('oscodename') }}/archive-mcpnewton.key"
-        pin:
-        - pin: 'release a=newton-hotfix'
-          priority: 1050
-          package: '*'
-      mirantis_openstack_security:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/newton/{{ grains.get('oscodename') }} newton-security main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/newton/{{ grains.get('oscodename') }}/archive-mcpnewton.key"
-        pin:
-        - pin: 'release a=newton-security'
-          priority: 1050
-          package: '*'
-      mirantis_openstack_updates:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/newton/{{ grains.get('oscodename') }} newton-updates main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/newton/{{ grains.get('oscodename') }}/archive-mcpnewton.key"
-        pin:
-        - pin: 'release a=newton-updates'
-          priority: 1050
-          package: '*'
-      mirantis_openstack_holdback:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/newton/{{ grains.get('oscodename') }} newton-holdback main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/newton/{{ grains.get('oscodename') }}/archive-mcpnewton.key"
-        pin:
-        - pin: 'release a=newton-holdback'
-          priority: 1050
-          package: '*'
diff --git a/tests/pillar/repo_mcp_openstack_ocata.sls b/tests/pillar/repo_mcp_openstack_ocata.sls
deleted file mode 100644
index e601208..0000000
--- a/tests/pillar/repo_mcp_openstack_ocata.sls
+++ /dev/null
@@ -1,44 +0,0 @@
-linux:
-  system:
-    enabled: true
-    repo:
-      mirantis_openstack_repo:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/ocata/{{ grains.get('oscodename') }} ocata main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/ocata/{{ grains.get('oscodename') }}/archive-mcpocata.key"
-        pin:
-        - pin: 'release a=ocata'
-          priority: 1050
-          package: '*'
-      mirantis_openstack_hotfix:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/ocata/{{ grains.get('oscodename') }} ocata-hotfix main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/ocata/{{ grains.get('oscodename') }}/archive-mcpocata.key"
-        pin:
-        - pin: 'release a=ocata-hotfix'
-          priority: 1050
-          package: '*'
-      mirantis_openstack_security:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/ocata/{{ grains.get('oscodename') }} ocata-security main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/ocata/{{ grains.get('oscodename') }}/archive-mcpocata.key"
-        pin:
-        - pin: 'release a=ocata-security'
-          priority: 1050
-          package: '*'
-      mirantis_openstack_updates:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/ocata/{{ grains.get('oscodename') }} ocata-updates main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/ocata/{{ grains.get('oscodename') }}/archive-mcpocata.key"
-        pin:
-        - pin: 'release a=ocata-uptades'
-          priority: 1050
-          package: '*'
-      mirantis_openstack_holdback:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/ocata/{{ grains.get('oscodename') }} ocata-holdback main"
-        architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/ocata/{{ grains.get('oscodename') }}/archive-mcpocata.key"
-        pin:
-        - pin: 'release a=ocata-holdback'
-          priority: 1050
-          package: '*'
diff --git a/tests/pillar/repo_mcp_openstack_pike.sls b/tests/pillar/repo_mcp_openstack_pike.sls
index 789b907..fe6af3c 100644
--- a/tests/pillar/repo_mcp_openstack_pike.sls
+++ b/tests/pillar/repo_mcp_openstack_pike.sls
@@ -3,10 +3,10 @@
     enabled: true
     repo:
       mirantis_openstack_repo:
-        source: "deb http://mirror.fuel-infra.org/mcp-repos/pike/{{ grains.get('oscodename') }} pike main"
+        source: "deb http://mirror.mirantis.com/update/2019.2.0/openstack-pike/{{ grains.get('oscodename') }} {{ grains.get('oscodename') }} main"
         architectures: amd64
-        key_url: "http://mirror.fuel-infra.org/mcp-repos/pike/{{ grains.get('oscodename') }}/archive-mcppike.key"
+        key_url: "http://mirror.mirantis.com/update/2019.2.0/openstack-pike/{{ grains.get('oscodename') }}/archive-pike.key"
         pin:
-        - pin: 'release a=pike'
+        - pin: 'release l=pike'
           priority: 1050
           package: '*'
\ No newline at end of file
diff --git a/tests/pillar/repo_mcp_openstack_queens.sls b/tests/pillar/repo_mcp_openstack_queens.sls
new file mode 100644
index 0000000..ebe1964
--- /dev/null
+++ b/tests/pillar/repo_mcp_openstack_queens.sls
@@ -0,0 +1,12 @@
+linux:
+  system:
+    enabled: true
+    repo:
+      mirantis_openstack_repo:
+        source: "deb http://mirror.mirantis.com/update/2019.2.0/openstack-queens/{{ grains.get('oscodename') }} {{ grains.get('oscodename') }} main"
+        architectures: amd64
+        key_url: "http://mirror.mirantis.com/update/2019.2.0/openstack-queens/{{ grains.get('oscodename') }}/archive-queens.key"
+        pin:
+        - pin: 'release l=queens'
+          priority: 1050
+          package: '*'
\ No newline at end of file