Merge "Fix all contrail templates for vsrx and runtest"
diff --git a/tcp_tests/fixtures/k8s_fixtures.py b/tcp_tests/fixtures/k8s_fixtures.py
index 50c69ee..409034e 100644
--- a/tcp_tests/fixtures/k8s_fixtures.py
+++ b/tcp_tests/fixtures/k8s_fixtures.py
@@ -180,8 +180,11 @@
if hasattr(request.node, 'rep_call') and \
(request.node.rep_call.passed or request.node.rep_call.failed)\
and cncf_publisher:
+ LOG.info("Waiting 60 sec for sonobuoy to generate results archive")
+ time.sleep(60)
+ LOG.info("Downloading sonobuoy results archive")
files = utils.extract_name_from_mark(cncf_publisher) \
- or "{}".format(func_name)
+ or "{}".format(func_name)
k8s_deployed.extract_file_to_node(
system='k8s', file_path='tmp/sonobuoy',
pod_name='sonobuoy', pod_namespace='heptio-sonobuoy'
diff --git a/tcp_tests/managers/k8smanager.py b/tcp_tests/managers/k8smanager.py
index 5e8ea56..79974d3 100644
--- a/tcp_tests/managers/k8smanager.py
+++ b/tcp_tests/managers/k8smanager.py
@@ -263,7 +263,7 @@
LOG.info("Test results stderr: {}".format(stderr))
return result
- def start_k8s_cncf_verification(self, timeout=60 * 90):
+ def start_k8s_cncf_verification(self, timeout=60 * 180):
"""
Build sonobuoy using golang docker image and install it in system
Then generate sonobuoy verification manifest using gen command
@@ -295,7 +295,7 @@
LOG.info("Waiting for CNCF to complete")
helpers.wait(
lambda: sonobuoy_status() == 'complete',
- interval=30, timeout=timeout,
+ interval=120, timeout=timeout,
timeout_msg="Timeout for CNCF reached."
)
diff --git a/tcp_tests/managers/runtestmanager.py b/tcp_tests/managers/runtestmanager.py
index e7fc15c..e29f072 100644
--- a/tcp_tests/managers/runtestmanager.py
+++ b/tcp_tests/managers/runtestmanager.py
@@ -197,12 +197,13 @@
indent=4, sort_keys=True)
f.write(container_inspect)
- def prepare(self):
+ def prepare(self, store_run_test_model):
barbican_pillar = "nova:controller:barbican:enabled"
result = self.__salt_api.get_pillar(tgt=self.control_name,
pillar=barbican_pillar)
self.barbican = result[0].get(self.control_name, False)
- self.store_runtest_model()
+ if store_run_test_model:
+ self.store_runtest_model()
cirros_pillar = ("salt-call --out=newline_values_only "
"pillar.get "
"glance:client:identity:"
@@ -225,11 +226,11 @@
salt_cmd + "'*' saltutil.refresh_pillar && " +
salt_cmd + "'*' saltutil.sync_all")},
{
- 'description': ("Install docker.io package and "
+ 'description': ("Install docker-ce package and "
"enable packets forwarding"),
'node_name': self.target_name,
'cmd': ("set -ex;" +
- salt_call_cmd + " pkg.install docker.io && " +
+ salt_call_cmd + " pkg.install docker-ce && " +
" iptables --policy FORWARD ACCEPT")},
{
'description': "Install PyPI docker package",
@@ -382,12 +383,13 @@
return {'inspect': inspect,
'logs': logs}
- def prepare_and_run_tempest(self, username='root'):
+ def prepare_and_run_tempest(self, username='root',
+ store_run_test_model=True):
"""
Run tempest tests
"""
tempest_timeout = settings.TEMPEST_TIMEOUT
- self.prepare()
+ self.prepare(store_run_test_model=store_run_test_model)
test_res = self.run_tempest(tempest_timeout)
self.fetch_arficats(username=username)
self.save_runtime_logs(**test_res)
diff --git a/tcp_tests/templates/cookied-bm-contrail-maas/lab04-physical-inventory.yaml b/tcp_tests/templates/cookied-bm-contrail-maas/lab04-physical-inventory.yaml
index 69a9df0..fb0d8d1 100644
--- a/tcp_tests/templates/cookied-bm-contrail-maas/lab04-physical-inventory.yaml
+++ b/tcp_tests/templates/cookied-bm-contrail-maas/lab04-physical-inventory.yaml
@@ -75,3 +75,10 @@
enp5s0f1:
role: single_vlan_ctl
single_address: 10.167.8.102
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: ctl01*
diff --git a/tcp_tests/templates/cookied-bm-contrail-maas/salt-context-environment.yaml b/tcp_tests/templates/cookied-bm-contrail-maas/salt-context-environment.yaml
index 1b560f4..c4346b6 100644
--- a/tcp_tests/templates/cookied-bm-contrail-maas/salt-context-environment.yaml
+++ b/tcp_tests/templates/cookied-bm-contrail-maas/salt-context-environment.yaml
@@ -6,6 +6,8 @@
roles:
- openstack_control_leader
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_ctl
diff --git a/tcp_tests/templates/cookied-bm-contrail-nfv-maas/lab04-physical-inventory.yaml b/tcp_tests/templates/cookied-bm-contrail-nfv-maas/lab04-physical-inventory.yaml
index 3c5401c..e7177b5 100644
--- a/tcp_tests/templates/cookied-bm-contrail-nfv-maas/lab04-physical-inventory.yaml
+++ b/tcp_tests/templates/cookied-bm-contrail-nfv-maas/lab04-physical-inventory.yaml
@@ -79,3 +79,10 @@
tenant_address: 192.168.0.102
dpdk_pci: "'0000:05:00.0'"
dpdk_mac: '00:1b:21:87:21:98'
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: ctl01*
diff --git a/tcp_tests/templates/cookied-bm-contrail-nfv-maas/salt-context-environment.yaml b/tcp_tests/templates/cookied-bm-contrail-nfv-maas/salt-context-environment.yaml
index 8b2be56..368d1f7 100644
--- a/tcp_tests/templates/cookied-bm-contrail-nfv-maas/salt-context-environment.yaml
+++ b/tcp_tests/templates/cookied-bm-contrail-nfv-maas/salt-context-environment.yaml
@@ -6,6 +6,8 @@
roles:
- openstack_control_leader
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_ctl
diff --git a/tcp_tests/templates/cookied-bm-contrail40-nfv/lab04-physical-inventory.yaml b/tcp_tests/templates/cookied-bm-contrail40-nfv/lab04-physical-inventory.yaml
index 736a356..ce02a9e 100644
--- a/tcp_tests/templates/cookied-bm-contrail40-nfv/lab04-physical-inventory.yaml
+++ b/tcp_tests/templates/cookied-bm-contrail40-nfv/lab04-physical-inventory.yaml
@@ -81,3 +81,10 @@
enp2s0f0:
role: single_vlan_ctl
single_address: 10.167.8.102
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: ctl01*
diff --git a/tcp_tests/templates/cookied-bm-contrail40-nfv/salt-context-environment.yaml b/tcp_tests/templates/cookied-bm-contrail40-nfv/salt-context-environment.yaml
index 67fc8c3..d43b66a 100644
--- a/tcp_tests/templates/cookied-bm-contrail40-nfv/salt-context-environment.yaml
+++ b/tcp_tests/templates/cookied-bm-contrail40-nfv/salt-context-environment.yaml
@@ -32,6 +32,8 @@
roles:
- openstack_control_leader
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_ctl
diff --git a/tcp_tests/templates/cookied-bm-contrail40/lab04-physical-inventory.yaml b/tcp_tests/templates/cookied-bm-contrail40/lab04-physical-inventory.yaml
index 5cb47fb..1639192 100644
--- a/tcp_tests/templates/cookied-bm-contrail40/lab04-physical-inventory.yaml
+++ b/tcp_tests/templates/cookied-bm-contrail40/lab04-physical-inventory.yaml
@@ -75,3 +75,10 @@
enp5s0f1:
role: single_vlan_ctl
single_address: 10.167.8.102
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: ctl01*
diff --git a/tcp_tests/templates/cookied-bm-contrail40/salt-context-environment.yaml b/tcp_tests/templates/cookied-bm-contrail40/salt-context-environment.yaml
index 67fc8c3..d43b66a 100644
--- a/tcp_tests/templates/cookied-bm-contrail40/salt-context-environment.yaml
+++ b/tcp_tests/templates/cookied-bm-contrail40/salt-context-environment.yaml
@@ -32,6 +32,8 @@
roles:
- openstack_control_leader
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_ctl
diff --git a/tcp_tests/templates/cookied-bm-dpdk-pipeline/salt-context-environment.yaml b/tcp_tests/templates/cookied-bm-dpdk-pipeline/salt-context-environment.yaml
index f8f1a2d..7c436d4 100644
--- a/tcp_tests/templates/cookied-bm-dpdk-pipeline/salt-context-environment.yaml
+++ b/tcp_tests/templates/cookied-bm-dpdk-pipeline/salt-context-environment.yaml
@@ -95,6 +95,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
enp3s0f0:
role: single_mgm
diff --git a/tcp_tests/templates/cookied-bm-k8s-contrail/lab04-upgrade-physical-inventory.yaml b/tcp_tests/templates/cookied-bm-k8s-contrail/lab04-upgrade-physical-inventory.yaml
index ad4e04a..724a6de 100644
--- a/tcp_tests/templates/cookied-bm-k8s-contrail/lab04-upgrade-physical-inventory.yaml
+++ b/tcp_tests/templates/cookied-bm-k8s-contrail/lab04-upgrade-physical-inventory.yaml
@@ -92,6 +92,13 @@
role: single_dhcp
ens11f1:
role: k8s_oc40_only_vhost_on_control_vlan
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: ctl01*
# cmp001.bm-k8s-contrail.local:
# reclass_storage_name: kubernetes_compute_node001
# roles:
diff --git a/tcp_tests/templates/cookied-bm-mcp-dvr-vxlan/salt-context-lab03-environment.yaml b/tcp_tests/templates/cookied-bm-mcp-dvr-vxlan/salt-context-lab03-environment.yaml
index 692cf19..f9ae84b 100644
--- a/tcp_tests/templates/cookied-bm-mcp-dvr-vxlan/salt-context-lab03-environment.yaml
+++ b/tcp_tests/templates/cookied-bm-mcp-dvr-vxlan/salt-context-lab03-environment.yaml
@@ -73,6 +73,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
enp2s0f0:
role: single_mgm_dhcp
@@ -93,3 +95,10 @@
role: bond0_ab_dvr_vxlan_ctl_mesh_external
external_address: 172.17.42.5
external_network_netmask: 255.255.255.192
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-bm-mcp-ocata-contrail-nfv/lab04-physical-inventory.yaml b/tcp_tests/templates/cookied-bm-mcp-ocata-contrail-nfv/lab04-physical-inventory.yaml
index a3640c8..f0559c5 100644
--- a/tcp_tests/templates/cookied-bm-mcp-ocata-contrail-nfv/lab04-physical-inventory.yaml
+++ b/tcp_tests/templates/cookied-bm-mcp-ocata-contrail-nfv/lab04-physical-inventory.yaml
@@ -79,3 +79,10 @@
tenant_address: 192.168.0.102
dpdk_pci: "'0000:05:00.0'"
dpdk_mac: '00:1b:21:87:21:98'
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: ctl01*
diff --git a/tcp_tests/templates/cookied-bm-mcp-ocata-contrail-nfv/salt-context-environment.yaml b/tcp_tests/templates/cookied-bm-mcp-ocata-contrail-nfv/salt-context-environment.yaml
index c568b78..fbf7d4a 100644
--- a/tcp_tests/templates/cookied-bm-mcp-ocata-contrail-nfv/salt-context-environment.yaml
+++ b/tcp_tests/templates/cookied-bm-mcp-ocata-contrail-nfv/salt-context-environment.yaml
@@ -6,6 +6,8 @@
roles:
- openstack_control_leader
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_ctl
diff --git a/tcp_tests/templates/cookied-bm-mcp-ocata-contrail/lab04-physical-inventory.yaml b/tcp_tests/templates/cookied-bm-mcp-ocata-contrail/lab04-physical-inventory.yaml
index 7bf4d2e..7614192 100644
--- a/tcp_tests/templates/cookied-bm-mcp-ocata-contrail/lab04-physical-inventory.yaml
+++ b/tcp_tests/templates/cookied-bm-mcp-ocata-contrail/lab04-physical-inventory.yaml
@@ -75,3 +75,10 @@
enp5s0f1:
role: single_vlan_ctl
single_address: 10.167.8.102
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: ctl01*
diff --git a/tcp_tests/templates/cookied-bm-mcp-ocata-contrail/salt-context-environment.yaml b/tcp_tests/templates/cookied-bm-mcp-ocata-contrail/salt-context-environment.yaml
index 6f29def..c37939c 100644
--- a/tcp_tests/templates/cookied-bm-mcp-ocata-contrail/salt-context-environment.yaml
+++ b/tcp_tests/templates/cookied-bm-mcp-ocata-contrail/salt-context-environment.yaml
@@ -6,6 +6,8 @@
roles:
- openstack_control_leader
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_ctl
diff --git a/tcp_tests/templates/cookied-bm-mcp-ovs-dpdk/salt-context-environment.yaml b/tcp_tests/templates/cookied-bm-mcp-ovs-dpdk/salt-context-environment.yaml
index 8aa8577..61db010 100644
--- a/tcp_tests/templates/cookied-bm-mcp-ovs-dpdk/salt-context-environment.yaml
+++ b/tcp_tests/templates/cookied-bm-mcp-ovs-dpdk/salt-context-environment.yaml
@@ -95,6 +95,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
enp3s0f0:
role: single_mgm
diff --git a/tcp_tests/templates/cookied-bm-oc40-queens/lab04-physical-inventory.yaml b/tcp_tests/templates/cookied-bm-oc40-queens/lab04-physical-inventory.yaml
index 5aa9ebe..76189cf 100644
--- a/tcp_tests/templates/cookied-bm-oc40-queens/lab04-physical-inventory.yaml
+++ b/tcp_tests/templates/cookied-bm-oc40-queens/lab04-physical-inventory.yaml
@@ -60,6 +60,13 @@
enp5s0f1:
role: single_vlan_ctl
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: ctl01*
+
# cmp001.cookied-bm-oc40-queens.local:
# reclass_storage_name: openstack_compute_node01
# roles:
@@ -91,4 +98,4 @@
# tenant_address: 192.168.0.102
# enp5s0f1:
# role: single_vlan_ctl
-# single_address: 10.167.8.102
+# single_address: 10.167.8.102
\ No newline at end of file
diff --git a/tcp_tests/templates/cookied-bm-oc40-queens/salt-context-environment.yaml b/tcp_tests/templates/cookied-bm-oc40-queens/salt-context-environment.yaml
index 90d7a3d..8c2c642 100644
--- a/tcp_tests/templates/cookied-bm-oc40-queens/salt-context-environment.yaml
+++ b/tcp_tests/templates/cookied-bm-oc40-queens/salt-context-environment.yaml
@@ -32,6 +32,8 @@
roles:
- openstack_control_leader
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_ctl
diff --git a/tcp_tests/templates/cookied-bm-ocata-cicd-pipeline/lab04-physical-inventory-nfv.yaml b/tcp_tests/templates/cookied-bm-ocata-cicd-pipeline/lab04-physical-inventory-nfv.yaml
index 1baa7be..0b4d3d0 100644
--- a/tcp_tests/templates/cookied-bm-ocata-cicd-pipeline/lab04-physical-inventory-nfv.yaml
+++ b/tcp_tests/templates/cookied-bm-ocata-cicd-pipeline/lab04-physical-inventory-nfv.yaml
@@ -124,6 +124,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
enp9s0f0:
role: single_mgm
diff --git a/tcp_tests/templates/cookied-bm-ocata-cicd-pipeline/lab04-physical-inventory.yaml b/tcp_tests/templates/cookied-bm-ocata-cicd-pipeline/lab04-physical-inventory.yaml
index 2eb036b..c886b41 100644
--- a/tcp_tests/templates/cookied-bm-ocata-cicd-pipeline/lab04-physical-inventory.yaml
+++ b/tcp_tests/templates/cookied-bm-ocata-cicd-pipeline/lab04-physical-inventory.yaml
@@ -77,6 +77,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
enp9s0f0:
role: single_mgm
@@ -84,6 +86,13 @@
enp9s0f1:
role: bond0_ab_dvr_vxlan_ctl_mesh_floating
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
+
# gtw02.ocata-cicd.local:
# reclass_storage_name: openstack_gateway_node02
# roles:
diff --git a/tcp_tests/templates/cookied-cicd-k8s-calico-sl/environment-context-k8s-sl.yaml b/tcp_tests/templates/cookied-cicd-k8s-calico-sl/environment-context-k8s-sl.yaml
index 4abe271..eee2067 100644
--- a/tcp_tests/templates/cookied-cicd-k8s-calico-sl/environment-context-k8s-sl.yaml
+++ b/tcp_tests/templates/cookied-cicd-k8s-calico-sl/environment-context-k8s-sl.yaml
@@ -256,3 +256,10 @@
role: single_dhcp
ens4:
role: single_ctl
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-cicd-k8s-calico/environment-context-k8s.yaml b/tcp_tests/templates/cookied-cicd-k8s-calico/environment-context-k8s.yaml
index d13627b..2da8dc9 100644
--- a/tcp_tests/templates/cookied-cicd-k8s-calico/environment-context-k8s.yaml
+++ b/tcp_tests/templates/cookied-cicd-k8s-calico/environment-context-k8s.yaml
@@ -143,3 +143,10 @@
role: single_dhcp
ens4:
role: single_ctl_calico
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-cicd-k8s-genie/environment-context-k8s-genie.yaml b/tcp_tests/templates/cookied-cicd-k8s-genie/environment-context-k8s-genie.yaml
index 807d07f..2c14f73 100644
--- a/tcp_tests/templates/cookied-cicd-k8s-genie/environment-context-k8s-genie.yaml
+++ b/tcp_tests/templates/cookied-cicd-k8s-genie/environment-context-k8s-genie.yaml
@@ -157,3 +157,10 @@
role: single_ctl_calico
ens5:
role: single_storage_dhcp
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-cicd-pike-dpdk/cookiecutter-context-pike-ovs-dpdk.yaml b/tcp_tests/templates/cookied-cicd-pike-dpdk/cookiecutter-context-pike-ovs-dpdk.yaml
index e4c5fbd..53c9687 100644
--- a/tcp_tests/templates/cookied-cicd-pike-dpdk/cookiecutter-context-pike-ovs-dpdk.yaml
+++ b/tcp_tests/templates/cookied-cicd-pike-dpdk/cookiecutter-context-pike-ovs-dpdk.yaml
@@ -144,7 +144,8 @@
openstack_nova_cpu_pinning: '4,5,8,9,10,11'
openstack_ovs_dvr_enabled: 'False'
openstack_ovs_encapsulation_type: vxlan
- openstack_proxy_address: 10.167.4.80
+ openstack_proxy_address: 172.17.16.80 # external network endpoint
+ openstack_proxy_vip_interface: ens5
openstack_proxy_hostname: prx
openstack_proxy_node01_address: 10.167.4.121
openstack_proxy_node01_hostname: prx01
diff --git a/tcp_tests/templates/cookied-cicd-pike-dpdk/environment-context.yaml b/tcp_tests/templates/cookied-cicd-pike-dpdk/environment-context.yaml
index 467680e..c192d5f 100644
--- a/tcp_tests/templates/cookied-cicd-pike-dpdk/environment-context.yaml
+++ b/tcp_tests/templates/cookied-cicd-pike-dpdk/environment-context.yaml
@@ -181,13 +181,17 @@
prx01:
reclass_storage_name: openstack_proxy_node01
roles:
- - openstack_proxy
+ #- openstack_proxy # another VIP interface used
- linux_system_codename_xenial
interfaces:
ens3:
role: single_dhcp
ens4:
role: single_ctl
+ ens5:
+ role: single_external
+ external_address: 172.17.16.121
+ external_network_netmask: 255.255.255.0
# Generator-based computes. For compatibility only
cmp<<count>>:
@@ -215,6 +219,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -228,3 +234,10 @@
role: single_ovs_br_floating
external_address: 10.90.0.110
external_network_netmask: 255.255.255.0
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-cicd-pike-dpdk/underlay.yaml b/tcp_tests/templates/cookied-cicd-pike-dpdk/underlay.yaml
index d4e5d4d..c114631 100644
--- a/tcp_tests/templates/cookied-cicd-pike-dpdk/underlay.yaml
+++ b/tcp_tests/templates/cookied-cicd-pike-dpdk/underlay.yaml
@@ -514,9 +514,26 @@
cloudinit_meta_data: *cloudinit_meta_data
cloudinit_user_data: *cloudinit_user_data_1604_swp
- interfaces: *interfaces
- network_config: *network_config
-
+ interfaces:
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+ - label: ens5
+ l2_network_device: external
+ interface_model: *interface_model
+ network_config:
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private
+ ens5:
+ networks:
+ - external
- name: {{ HOSTNAME_CMP01 }}
role: salt_minion
diff --git a/tcp_tests/templates/cookied-cicd-pike-dvr-sl/cookiecutter-context-pike-dvr-sl.yaml b/tcp_tests/templates/cookied-cicd-pike-dvr-sl/cookiecutter-context-pike-dvr-sl.yaml
index 298fd81..b0c69e8 100644
--- a/tcp_tests/templates/cookied-cicd-pike-dvr-sl/cookiecutter-context-pike-dvr-sl.yaml
+++ b/tcp_tests/templates/cookied-cicd-pike-dvr-sl/cookiecutter-context-pike-dvr-sl.yaml
@@ -142,7 +142,8 @@
openstack_nova_compute_nfv_req_enabled: 'False'
openstack_ovs_dvr_enabled: 'True'
openstack_ovs_encapsulation_type: vxlan
- openstack_proxy_address: 10.167.4.80
+ openstack_proxy_address: 172.17.16.80 # external network endpoint
+ openstack_proxy_vip_interface: ens5
openstack_proxy_hostname: prx
openstack_proxy_node01_address: 10.167.4.121
openstack_proxy_node01_hostname: prx01
diff --git a/tcp_tests/templates/cookied-cicd-pike-dvr-sl/environment_context.yaml b/tcp_tests/templates/cookied-cicd-pike-dvr-sl/environment_context.yaml
index 24c36e5..c8fb940 100644
--- a/tcp_tests/templates/cookied-cicd-pike-dvr-sl/environment_context.yaml
+++ b/tcp_tests/templates/cookied-cicd-pike-dvr-sl/environment_context.yaml
@@ -123,13 +123,17 @@
prx01:
reclass_storage_name: openstack_proxy_node01
roles:
- - openstack_proxy
+ #- openstack_proxy # another VIP interface used
- linux_system_codename_xenial
interfaces:
ens3:
role: single_dhcp
ens4:
role: single_ctl
+ ens5:
+ role: single_external
+ external_address: 172.17.16.121
+ external_network_netmask: 255.255.255.0
mon01:
reclass_storage_name: stacklight_server_node01
@@ -251,6 +255,8 @@
reclass_storage_name: openstack_gateway_node01
roles:
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -260,3 +266,10 @@
role: bond0_ab_ovs_vxlan_mesh
ens6:
role: bond1_ab_ovs_floating
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-cicd-pike-dvr-sl/underlay.yaml b/tcp_tests/templates/cookied-cicd-pike-dvr-sl/underlay.yaml
index 5b871d7..2cbbce6 100644
--- a/tcp_tests/templates/cookied-cicd-pike-dvr-sl/underlay.yaml
+++ b/tcp_tests/templates/cookied-cicd-pike-dvr-sl/underlay.yaml
@@ -597,9 +597,26 @@
cloudinit_meta_data: *cloudinit_meta_data
cloudinit_user_data: *cloudinit_user_data_1604_swp
- interfaces: *interfaces
- network_config: *network_config
-
+ interfaces:
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+ - label: ens5
+ l2_network_device: external
+ interface_model: *interface_model
+ network_config:
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private
+ ens5:
+ networks:
+ - external
- name: {{ HOSTNAME_CMP01 }}
role: salt_minion
diff --git a/tcp_tests/templates/cookied-cicd-pike-ovs-sl/cookiecutter-context-pike-ovs-sl.yaml b/tcp_tests/templates/cookied-cicd-pike-ovs-sl/cookiecutter-context-pike-ovs-sl.yaml
index 94b6549..a5a862b 100644
--- a/tcp_tests/templates/cookied-cicd-pike-ovs-sl/cookiecutter-context-pike-ovs-sl.yaml
+++ b/tcp_tests/templates/cookied-cicd-pike-ovs-sl/cookiecutter-context-pike-ovs-sl.yaml
@@ -142,7 +142,8 @@
openstack_nova_compute_nfv_req_enabled: 'False'
openstack_ovs_dvr_enabled: 'False'
openstack_ovs_encapsulation_type: vxlan
- openstack_proxy_address: 10.167.4.80
+ openstack_proxy_address: 172.17.16.80 # external network endpoint
+ openstack_proxy_vip_interface: ens5
openstack_proxy_hostname: prx
openstack_proxy_node01_address: 10.167.4.121
openstack_proxy_node01_hostname: prx01
diff --git a/tcp_tests/templates/cookied-cicd-pike-ovs-sl/environment-context.yaml b/tcp_tests/templates/cookied-cicd-pike-ovs-sl/environment-context.yaml
index adcfe0c..aaedf48 100644
--- a/tcp_tests/templates/cookied-cicd-pike-ovs-sl/environment-context.yaml
+++ b/tcp_tests/templates/cookied-cicd-pike-ovs-sl/environment-context.yaml
@@ -121,13 +121,17 @@
prx01:
reclass_storage_name: openstack_proxy_node01
roles:
- - openstack_proxy
+ #- openstack_proxy # another VIP interface used
- linux_system_codename_xenial
interfaces:
ens3:
role: single_dhcp
ens4:
role: single_ctl
+ ens5:
+ role: single_external
+ external_address: 172.17.16.121
+ external_network_netmask: 255.255.255.0
mon01:
reclass_storage_name: stacklight_server_node01
@@ -249,6 +253,8 @@
reclass_storage_name: openstack_gateway_node01
roles:
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -258,3 +264,10 @@
role: bond0_ab_ovs_vxlan_mesh
ens6:
role: bond1_ab_ovs_floating
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-cicd-pike-ovs-sl/underlay.yaml b/tcp_tests/templates/cookied-cicd-pike-ovs-sl/underlay.yaml
index b1efeb1..a7b966c 100644
--- a/tcp_tests/templates/cookied-cicd-pike-ovs-sl/underlay.yaml
+++ b/tcp_tests/templates/cookied-cicd-pike-ovs-sl/underlay.yaml
@@ -598,8 +598,26 @@
cloudinit_meta_data: *cloudinit_meta_data
cloudinit_user_data: *cloudinit_user_data_1604_swp
- interfaces: *interfaces
- network_config: *network_config
+ interfaces:
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+ - label: ens5
+ l2_network_device: external
+ interface_model: *interface_model
+ network_config:
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private
+ ens5:
+ networks:
+ - external
- name: {{ HOSTNAME_CMP01 }}
role: salt_minion
diff --git a/tcp_tests/templates/cookied-cicd-queens-dvr-sl/cookiecutter-context-queens-dvr-sl.yaml b/tcp_tests/templates/cookied-cicd-queens-dvr-sl/cookiecutter-context-queens-dvr-sl.yaml
index 855363b..0fa8367 100644
--- a/tcp_tests/templates/cookied-cicd-queens-dvr-sl/cookiecutter-context-queens-dvr-sl.yaml
+++ b/tcp_tests/templates/cookied-cicd-queens-dvr-sl/cookiecutter-context-queens-dvr-sl.yaml
@@ -142,7 +142,8 @@
openstack_nova_compute_nfv_req_enabled: 'False'
openstack_ovs_dvr_enabled: 'True'
openstack_ovs_encapsulation_type: vxlan
- openstack_proxy_address: 10.167.4.80
+ openstack_proxy_address: 172.17.16.80 # external network endpoint
+ openstack_proxy_vip_interface: ens5
openstack_proxy_hostname: prx
openstack_proxy_node01_address: 10.167.4.121
openstack_proxy_node01_hostname: prx01
diff --git a/tcp_tests/templates/cookied-cicd-queens-dvr-sl/environment_context.yaml b/tcp_tests/templates/cookied-cicd-queens-dvr-sl/environment_context.yaml
index c3efdde..1fe8467 100644
--- a/tcp_tests/templates/cookied-cicd-queens-dvr-sl/environment_context.yaml
+++ b/tcp_tests/templates/cookied-cicd-queens-dvr-sl/environment_context.yaml
@@ -123,13 +123,17 @@
prx01:
reclass_storage_name: openstack_proxy_node01
roles:
- - openstack_proxy
+ #- openstack_proxy # another VIP interface used
- linux_system_codename_xenial
interfaces:
ens3:
role: single_dhcp
ens4:
role: single_ctl
+ ens5:
+ role: single_external
+ external_address: 172.17.16.121
+ external_network_netmask: 255.255.255.0
mon01:
reclass_storage_name: stacklight_server_node01
@@ -251,6 +255,8 @@
reclass_storage_name: openstack_gateway_node01
roles:
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -260,3 +266,10 @@
role: bond0_ab_ovs_vxlan_mesh
ens6:
role: bond1_ab_ovs_floating
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-cicd-queens-dvr-sl/underlay.yaml b/tcp_tests/templates/cookied-cicd-queens-dvr-sl/underlay.yaml
index baa714d..3a65412 100644
--- a/tcp_tests/templates/cookied-cicd-queens-dvr-sl/underlay.yaml
+++ b/tcp_tests/templates/cookied-cicd-queens-dvr-sl/underlay.yaml
@@ -597,9 +597,26 @@
cloudinit_meta_data: *cloudinit_meta_data
cloudinit_user_data: *cloudinit_user_data_1604_swp
- interfaces: *interfaces
- network_config: *network_config
-
+ interfaces:
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+ - label: ens5
+ l2_network_device: external
+ interface_model: *interface_model
+ network_config:
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private
+ ens5:
+ networks:
+ - external
- name: {{ HOSTNAME_CMP01 }}
role: salt_minion
diff --git a/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/_context-cookiecutter-mcp-mitaka-dvr-ceph.yaml b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/_context-cookiecutter-mcp-mitaka-dvr-ceph.yaml
new file mode 100644
index 0000000..16b73bd
--- /dev/null
+++ b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/_context-cookiecutter-mcp-mitaka-dvr-ceph.yaml
@@ -0,0 +1,223 @@
+default_context:
+ bmk_enabled: 'False'
+ designate_backend: bind
+ ceph_cluster_network: 172.16.10.0/24
+ ceph_enabled: 'True'
+ ceph_hyper_converged: 'False'
+ ceph_mon_node01_address: 172.16.10.66
+ ceph_mon_node01_hostname: cmn01
+ ceph_mon_node02_address: 172.16.10.67
+ ceph_mon_node02_hostname: cmn02
+ ceph_mon_node03_address: 172.16.10.68
+ ceph_mon_node03_hostname: cmn03
+ ceph_osd_backend: bluestore
+ ceph_osd_block_db_size: '10'
+ ceph_osd_bond_mode: active-backup
+ ceph_osd_count: '2'
+ ceph_osd_data_disks: /dev/vdb
+ ceph_osd_journal_or_block_db_disks: /dev/vdc
+ ceph_osd_node_count: '2'
+ ceph_osd_journal_size: '10'
+ ceph_osd_primary_first_nic: eth1
+ ceph_osd_primary_second_nic: eth2
+ ceph_osd_rack01_backend_subnet: 172.16.10
+ ceph_osd_rack01_hostname: osd
+ ceph_osd_rack01_single_subnet: 172.16.10
+ ceph_osd_single_address_ranges: 172.16.10.94-172.16.10.95
+ ceph_osd_deploy_address_ranges: 172.16.11.94-172.16.11.95
+ ceph_osd_backend_address_ranges: 172.16.10.94-172.16.10.95
+ ceph_public_network: 172.16.10.0/24
+ ceph_rgw_address: 172.16.10.75
+ ceph_rgw_hostname: rgw
+ ceph_rgw_node01_address: 172.16.10.76
+ ceph_rgw_node01_hostname: rgw01
+ ceph_rgw_node02_address: 172.16.10.77
+ ceph_rgw_node02_hostname: rgw02
+ ceph_rgw_node03_address: 172.16.10.78
+ ceph_rgw_node03_hostname: rgw03
+ ceph_version: luminous
+ cicd_enabled: 'False'
+ cluster_domain: cookied-mcp-mitaka-dvr-ceph.local
+ cluster_name: cookied-mcp-mitaka-dvr-ceph
+ compute_bond_mode: active-backup
+ compute_primary_first_nic: eth1
+ compute_primary_second_nic: eth2
+ context_seed: wUqrwKeBTCpRpVrhK1KwZQv4cjM9VhG7L2vQ0iQsTuMrXASklEBDmJEf6bnPEqcK
+ control_network_netmask: 255.255.255.0
+ control_network_subnet: 172.16.10.0/24
+ control_vlan: '10'
+ cookiecutter_template_branch: master
+ cookiecutter_template_credentials: gerrit
+ cookiecutter_template_url: ssh://mcp-jenkins@gerrit.mcp.mirantis.com:29418/mk/cookiecutter-templates.git
+ deploy_network_gateway: 192.168.10.1
+ deploy_network_netmask: 255.255.255.0
+ deploy_network_subnet: 192.168.10.0/24
+ deployment_type: physical
+ dns_server01: 8.8.8.8
+ dns_server02: 8.8.4.4
+ email_address: ddmitriev@mirantis.com
+ gateway_primary_first_nic: eth1
+ gateway_primary_second_nic: eth2
+ gnocchi_aggregation_storage: ceph
+ infra_bond_mode: active-backup
+ infra_deploy_nic: eth0
+ infra_kvm01_control_address: 172.16.10.101
+ infra_kvm01_deploy_address: 192.168.10.101
+ infra_kvm01_hostname: kvm01
+ infra_kvm02_control_address: 172.16.10.102
+ infra_kvm02_deploy_address: 192.168.10.102
+ infra_kvm02_hostname: kvm02
+ infra_kvm03_control_address: 172.16.10.103
+ infra_kvm03_deploy_address: 192.168.10.103
+ infra_kvm03_hostname: kvm03
+ infra_kvm_vip_address: 172.16.10.100
+ infra_primary_first_nic: eth1
+ infra_primary_second_nic: eth2
+ kubernetes_enabled: 'False'
+ local_repositories: 'False'
+ maas_deploy_address: 192.168.10.90
+ maas_hostname: cfg01
+ mcp_version: stable
+ offline_deployment: 'False'
+ opencontrail_enabled: 'False'
+ openstack_benchmark_node01_address: 172.16.10.95
+ openstack_benchmark_node01_hostname: bmk01
+ openstack_cluster_size: compact
+ openstack_compute_count: '2'
+ openstack_compute_rack01_hostname: cmp
+ openstack_compute_rack01_single_subnet: 172.16.10
+ openstack_compute_rack01_tenant_subnet: 10.1.0
+ openstack_compute_single_address_ranges: 172.16.10.105-172.16.10.106
+ openstack_compute_deploy_address_ranges: 192.168.10.105-192.168.10.106
+ openstack_compute_tenant_address_ranges: 10.1.0.105-10.1.0.106
+ openstack_control_address: 172.16.10.100
+ openstack_control_hostname: ctl
+ openstack_control_node01_address: 172.16.10.101
+ openstack_control_node01_hostname: ctl01
+ openstack_control_node02_address: 172.16.10.102
+ openstack_control_node02_hostname: ctl02
+ openstack_control_node03_address: 172.16.10.103
+ openstack_control_node03_hostname: ctl03
+ openstack_database_address: 172.16.10.100
+ openstack_database_hostname: ctl
+ openstack_database_node01_address: 172.16.10.101
+ openstack_database_node01_hostname: ctl01
+ openstack_database_node02_address: 172.16.10.102
+ openstack_database_node02_hostname: ctl02
+ openstack_database_node03_address: 172.16.10.103
+ openstack_database_node03_hostname: ctl03
+ openstack_enabled: 'True'
+ openstack_gateway_node01_address: 172.16.10.110
+ openstack_gateway_node01_hostname: gtw01
+ openstack_gateway_node01_tenant_address: 10.1.0.6
+ openstack_gateway_node02_address: 172.16.10.111
+ openstack_gateway_node02_hostname: gtw02
+ openstack_gateway_node02_tenant_address: 10.1.0.7
+ openstack_gateway_node03_address: 172.16.10.112
+ openstack_gateway_node03_hostname: gtw03
+ openstack_gateway_node03_tenant_address: 10.1.0.8
+ openstack_message_queue_address: 172.16.10.100
+ openstack_message_queue_hostname: ctl
+ openstack_message_queue_node01_address: 172.16.10.101
+ openstack_message_queue_node01_hostname: ctl01
+ openstack_message_queue_node02_address: 172.16.10.102
+ openstack_message_queue_node02_hostname: ctl02
+ openstack_message_queue_node03_address: 172.16.10.103
+ openstack_message_queue_node03_hostname: ctl03
+ openstack_network_engine: ovs
+ openstack_neutron_qos: 'False'
+ openstack_neutron_vlan_aware_vms: 'False'
+ openstack_nfv_dpdk_enabled: 'False'
+ openstack_nfv_sriov_enabled: 'False'
+ openstack_nova_compute_nfv_req_enabled: 'False'
+ openstack_ovs_dvr_enabled: 'True'
+ openstack_ovs_encapsulation_type: vxlan
+ openstack_proxy_address: 172.16.10.80
+ openstack_proxy_hostname: prx
+ openstack_proxy_node01_address: 172.16.10.121
+ openstack_proxy_node01_hostname: prx01
+ openstack_proxy_node02_address: 172.16.10.122
+ openstack_proxy_node02_hostname: prx02
+ openstack_upgrade_node01_address: 172.16.10.19
+ openstack_version: mitaka
+ oss_enabled: 'False'
+ oss_node03_address: ${_param:stacklight_monitor_node03_address}
+ oss_notification_app_id: '24'
+ oss_notification_sender_password: password
+ oss_notification_smtp_port: '587'
+ oss_notification_webhook_login_id: '13'
+ platform: openstack_enabled
+ public_host: ${_param:openstack_proxy_address}
+ publication_method: email
+ reclass_repository: https://github.com/Mirantis/mk-lab-salt-model.git
+ backup_private_key: |
+ -----BEGIN RSA PRIVATE KEY-----
+ MIIEowIBAAKCAQEAxL6/rVgCetsETpZaUmXmkj8cZ1WN0eubH1FvMDOi/La9ZJyT
+ k0C6AYpJnIyEm93pMj5cLm08qRqMW+2pdOhYjcH69yg5MrX5SkRk8jCmIHIYoIbh
+ Qnwbnj3dd3I39ZdfU2FO7u2vlbglVou6ZoQxlJDItuLNtzq6EG+w9eF19e7+OsC6
+ 6iUItp618zfw1l3J/8nKvCGe2RYDf7mJW6XwCl/DwryJmwwzvPgYJ3QMuDD8/HFj
+ lrJ3xjFTXj4b4Ws1XIoy78fFbtiLr4OwqCYkho03u2E5rOOP1qZxZB63sivHMLMO
+ MM5bOAQKbulFNoyALADGYfc7sf0bZ4u9XXDXxQIDAQABAoIBAQCfmc2MJRT97KW1
+ yqpCpX9BrAiymuiNHf+cjEcSZxEUyHkjIRFmJt+9WB0W7ba1anM92vCUiPDojSzH
+ dig9Oi578JxR20NrK8uqv4jUHzrknynzLveVI3CUEcOSnglfJQijbxDFKfOCFPvV
+ FUyE1UATMNBh6+LNfMprgu+exuMWOPnDyUiYQ+WZ0JfuZY8fuaZte4woJJOb9LUu
+ 5rsMG/smIzjpgZ0Z9ZVDMurfq565qhpaXRAqKeIuyht8pacTo31iMQdHB78AvY/3
+ g0z21Gk8k3z0Kr/YFKr2r4FmXY5m/gAUvZly2ZrVQM5XsbTVCzq/JpI5fssNvSbU
+ AKmXzf4RAoGBAOO3d4/cstxERzW6hyOTjZIN1ppR52CsnZTsVPbfd0pCtmzmVZce
+ CtHKdcXSbTwZvvkK09QSWAp3MoSpd0gIOiLU8Wx/R/RIZsu9BlhTS3r3EQLnk72d
+ H/1TTA+j4T/LIYLSojQ1RxvIrHetAD44j732aTwKAHj/SybEAVqNkOB/AoGBAN0u
+ gLcrgqIHGrk4VjWSvlCGymfF40equcx+ud7XhfZDGETUOSahW4dPZ52cjPAkrCBQ
+ MMfcDwSVGsOAjd+mNt11BHUKobnhXwFaWWuyqyn9NmWFbjMbICVh7E3Of5aVN38o
+ lrmo/7LuKMVG7XRwphCv5NkaJmQG4njDyUQWlaW7AoGADCd8wDb9bPhP/LQqBmIX
+ ylXmwHHisaxE9O/wUQT4bwREjGd25gv6c9wkkRx8LBsLsGs9hzI7dMOL9Ly+2x9l
+ SvqmsC3S/1zl77X1Ir2/Z57MT6Vgo1xBmtnZU3Rhz2/eKAdqFPNLClaZrgGT475N
+ HcyLLWMzR0IJFtabY+Puea0CgYA8Zb5wRkldxWLewSuJZZDinGwY+kieAVjLJq/K
+ 0j+ah6fQ48LXcah0wpIgz+cMjHcUO9GWQdk3/x9X03rqX5EL2DBnZYfUIl63F9zj
+ M97ZkHOSNWVqPzX//0Vv2butewG0j3jZKfTo/2/SrxOYgEpYtC9huWpSVi7xm0US
+ erhSkQKBgFIf9JEsfgE57ANhvITZ3ZI0uZXNxZkXQaVg8jvScDi79IIhy9iPzhKC
+ aIIQoDNIlWv1ftCRZ5AlBvVXgvQ/QNrwy48JiQTzWZlb9Ezg8w+olQmSbG6fq7Y+
+ 7r3i+QUZ7RBdOb24QcQ618q54ozNTCB7OywY78ptFzeoBeptiNr1
+ -----END RSA PRIVATE KEY-----
+ backup_public_key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDEvr+tWAJ62wROllpSZeaSPxxnVY3R65sfUW8wM6L8tr1knJOTQLoBikmcjISb3ekyPlwubTypGoxb7al06FiNwfr3KDkytflKRGTyMKYgchighuFCfBuePd13cjf1l19TYU7u7a+VuCVWi7pmhDGUkMi24s23OroQb7D14XX17v46wLrqJQi2nrXzN/DWXcn/ycq8IZ7ZFgN/uYlbpfAKX8PCvImbDDO8+BgndAy4MPz8cWOWsnfGMVNePhvhazVcijLvx8Vu2Iuvg7CoJiSGjTe7YTms44/WpnFkHreyK8cwsw4wzls4BApu6UU2jIAsAMZh9zux/Rtni71dcNfF
+ salt_api_password: H0rTPdmktZ8RI7T7y6fjqY0uEbbs7Kwi
+ salt_api_password_hash: $6$lfbIFtMZ$.nTbTDMzs1iYv0WqkZHia8H8Fma963Nv3qyyz1x68jQh0YXK9i907B/hvoG4QHMvfolE7V7vQnFClJ1mVA3Yb.
+ salt_master_address: 172.16.10.90
+ salt_master_hostname: cfg01
+ salt_master_management_address: 192.168.10.90
+ shared_reclass_url: ssh://mcp-jenkins@gerrit.mcp.mirantis.com:29418/salt-models/reclass-system.git
+ fluentd_enabled: 'True'
+ stacklight_enabled: 'True'
+ stacklight_log_address: 172.16.10.70
+ stacklight_log_hostname: mon
+ stacklight_log_node01_address: 172.16.10.107
+ stacklight_log_node01_hostname: mon01
+ stacklight_log_node02_address: 172.16.10.108
+ stacklight_log_node02_hostname: mon02
+ stacklight_log_node03_address: 172.16.10.109
+ stacklight_log_node03_hostname: mon03
+ stacklight_monitor_address: 172.16.10.70
+ stacklight_monitor_hostname: mon
+ stacklight_monitor_node01_address: 172.16.10.107
+ stacklight_monitor_node01_hostname: mon01
+ stacklight_monitor_node02_address: 172.16.10.108
+ stacklight_monitor_node02_hostname: mon02
+ stacklight_monitor_node03_address: 172.16.10.109
+ stacklight_monitor_node03_hostname: mon03
+ stacklight_notification_address: alerts@localhost
+ stacklight_notification_smtp_host: 127.0.0.1
+ stacklight_telemetry_address: 172.16.10.70
+ stacklight_telemetry_hostname: mon
+ stacklight_telemetry_node01_address: 172.16.10.107
+ stacklight_telemetry_node01_hostname: mon01
+ stacklight_telemetry_node02_address: 172.16.10.108
+ stacklight_telemetry_node02_hostname: mon02
+ stacklight_telemetry_node03_address: 172.16.10.109
+ stacklight_telemetry_node03_hostname: mon03
+ stacklight_version: '2'
+ static_ips_on_deploy_network_enabled: 'False'
+ tenant_network_gateway: 10.1.0.1
+ tenant_network_netmask: 255.255.255.0
+ tenant_network_subnet: 10.1.0.0/24
+ tenant_vlan: '20'
+ upstream_proxy_enabled: 'False'
+ use_default_network_scheme: 'False'
\ No newline at end of file
diff --git a/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/_context-environment.yaml
new file mode 100644
index 0000000..89bf918
--- /dev/null
+++ b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/_context-environment.yaml
@@ -0,0 +1,225 @@
+nodes:
+ cfg01.mcp11-ovs-dpdk.local:
+ reclass_storage_name: infra_config_node01
+ roles:
+ - infra_config
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ ctl01.mcp11-ovs-dpdk.local:
+ reclass_storage_name: openstack_control_node01
+ roles:
+ - infra_kvm
+ - openstack_control_leader
+ - openstack_database_leader
+ - openstack_message_queue
+ - features_designate_bind9_database
+ - features_designate_bind9_dns
+ - features_designate_bind9
+ - features_designate_bind9_keystone
+ - features_lvm_backend_control
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ ctl02.mcp11-ovs-dpdk.local:
+ reclass_storage_name: openstack_control_node02
+ roles:
+ - infra_kvm
+ - openstack_control
+ - openstack_database
+ - openstack_message_queue
+ - features_designate_bind9_database
+ - features_designate_bind9_dns
+ - features_designate_bind9
+ - features_lvm_backend_control
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ ctl03.mcp11-ovs-dpdk.local:
+ reclass_storage_name: openstack_control_node03
+ roles:
+ - infra_kvm
+ - openstack_control
+ - openstack_database
+ - openstack_message_queue
+ - features_designate_bind9_database
+ - features_designate_bind9
+ - features_lvm_backend_control
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ prx01.mcp11-ovs-dpdk.local:
+ reclass_storage_name: openstack_proxy_node01
+ roles:
+ - openstack_proxy
+ - features_designate_bind9_proxy
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ mon01.mcp11-ovs-dpdk.local:
+ reclass_storage_name: stacklight_server_node01
+ roles:
+ - stacklightv2_server_leader
+ - stacklight_telemetry_leader
+ - stacklight_log_leader_v2
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ mon02.mcp11-ovs-dpdk.local:
+ reclass_storage_name: stacklight_server_node02
+ roles:
+ - stacklightv2_server
+ - stacklight_telemetry
+ - stacklight_log
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ mon03.mcp11-ovs-dpdk.local:
+ reclass_storage_name: stacklight_server_node03
+ roles:
+ - stacklightv2_server
+ - stacklight_telemetry
+ - stacklight_log
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ # Generator-based computes. For compatibility only
+ cmp<<count>>.mcp11-ovs-dpdk.local:
+ reclass_storage_name: openstack_compute_rack01
+ roles:
+ - openstack_compute
+ - features_lvm_backend_volume_vdb
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+ ens5:
+ role: bond0_ab_ovs_vxlan_mesh
+ ens6:
+ role: bond1_ab_ovs_floating
+
+ gtw01.mcp11-ovs-dpdk.local:
+ reclass_storage_name: openstack_gateway_node01
+ roles:
+ - openstack_gateway
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+ ens5:
+ role: bond0_ab_ovs_vxlan_mesh
+ ens6:
+ role: bond1_ab_ovs_floating
+
+ osd<<count>>.mcp11-ovs-dpdk.local:
+ reclass_storage_name: ceph_osd_rack01
+ roles:
+ - ceph_osd
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ cmn01.mcp11-ovs-dpdk.local:
+ reclass_storage_name: ceph_mon_node01
+ roles:
+ - ceph_mon
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ cmn02.mcp11-ovs-dpdk.local:
+ reclass_storage_name: ceph_mon_node02
+ roles:
+ - ceph_mon
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ cmn03.mcp11-ovs-dpdk.local:
+ reclass_storage_name: ceph_mon_node03
+ roles:
+ - ceph_mon
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ rgw01.mcp11-ovs-dpdk.local:
+ reclass_storage_name: ceph_rgw_node01
+ roles:
+ - ceph_rgw
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ rgw02.mcp11-ovs-dpdk.local:
+ reclass_storage_name: ceph_rgw_node02
+ roles:
+ - ceph_rgw
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
+
+ rgw03.cmcp11-ovs-dpdk.local:
+ reclass_storage_name: ceph_rgw_node03
+ roles:
+ - ceph_rgw
+ - linux_system_codename_xenial
+ interfaces:
+ ens3:
+ role: single_dhcp
+ ens4:
+ role: single_ctl
\ No newline at end of file
diff --git a/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/core.yaml b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/core.yaml
new file mode 100644
index 0000000..546cc34
--- /dev/null
+++ b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/core.yaml
@@ -0,0 +1,12 @@
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import HOSTNAME_CFG01 with context %}
+
+{% import 'shared-core.yaml' as SHARED_CORE with context %}
+
+{{ SHARED_CORE.MACRO_INSTALL_KEEPALIVED() }}
+{{ SHARED_CORE.MACRO_INSTALL_GLUSTERFS() }}
+{{ SHARED_CORE.MACRO_INSTALL_RABBITMQ() }}
+{{ SHARED_CORE.MACRO_INSTALL_GALERA() }}
+{{ SHARED_CORE.MACRO_INSTALL_HAPROXY() }}
+{{ SHARED_CORE.MACRO_INSTALL_NGINX() }}
+{{ SHARED_CORE.MACRO_INSTALL_MEMCACHED() }}
+{{ SHARED_CORE.MACRO_CHECK_VIP() }}
\ No newline at end of file
diff --git a/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/openstack.yaml b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/openstack.yaml
new file mode 100644
index 0000000..318a992
--- /dev/null
+++ b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/openstack.yaml
@@ -0,0 +1,174 @@
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import HOSTNAME_CFG01 with context %}
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import HOSTNAME_CTL01 with context %}
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import HOSTNAME_CTL02 with context %}
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import HOSTNAME_CTL03 with context %}
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import HOSTNAME_GTW01 with context %}
+{% from 'shared-salt.yaml' import IPV4_NET_EXTERNAL_PREFIX with context %}
+{% from 'shared-salt.yaml' import IPV4_NET_TENANT_PREFIX with context %}
+
+{% import 'shared-openstack.yaml' as SHARED_OPENSTACK with context %}
+{% import 'shared-salt.yaml' as SHARED with context %}
+
+{% import 'shared-ceph.yaml' as SHARED_CEPH with context %}
+
+# Deploy nginx before openstack services (PROD-22740)
+- description: Deploy nginx proxy
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@nginx:server' state.sls nginx
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: true
+
+{{ SHARED_CEPH.MACRO_INSTALL_CEPH_MONS() }}
+
+{{ SHARED_CEPH.MACRO_INSTALL_CEPH_MGR() }}
+
+{{ SHARED_CEPH.MACRO_INSTALL_CEPH_OSD_AND_RADOSGW() }}
+
+{{ SHARED_CEPH.CONNECT_CEPH_TO_SERVICES() }}
+
+{{ SHARED_OPENSTACK.MACRO_INSTALL_KEYSTONE() }}
+
+{{ SHARED_OPENSTACK.MACRO_INSTALL_GLANCE() }}
+
+{{ SHARED_OPENSTACK.MACRO_INSTALL_NOVA() }}
+
+{{ SHARED_OPENSTACK.MACRO_INSTALL_CINDER() }}
+
+{{ SHARED_OPENSTACK.MACRO_INSTALL_NEUTRON() }}
+
+{{ SHARED_OPENSTACK.MACRO_INSTALL_HEAT() }}
+
+# install designate backend
+- description: Install bind
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@bind:server' state.sls bind
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+{{ SHARED_OPENSTACK.MACRO_INSTALL_DESIGNATE() }}
+
+{{ SHARED_OPENSTACK.MACRO_INSTALL_HORIZON() }}
+
+# Install compute node
+
+- description: Apply formulas for compute node
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'cmp*' state.apply
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: true
+
+- description: Re-apply(as in doc) formulas for compute node
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'cmp*' state.apply
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Check IP on computes
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'cmp*' cmd.run
+ 'ip a'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 10, delay: 30}
+ skip_fail: false
+
+
+ # Upload cirros image
+
+- description: Upload cirros image on ctl01
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+ 'wget http://images.mirantis.com.s3.amazonaws.com/cirros-x64-20170828.qcow2'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 2, delay: 30}
+ skip_fail: false
+
+- description: Register image in glance
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+ '. /root/keystonercv3; glance --timeout 120 image-create --name cirros --visibility public --disk-format qcow2 --container-format bare --progress < /root/cirros-x64-20170828.qcow2'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
+
+- description: Create net04_external
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+ '. /root/keystonercv3; neutron net-create net04_ext --router:external True --provider:physical_network physnet1 --provider:network_type flat'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
+
+- description: Create subnet_external
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+ '. /root/keystonercv3; neutron subnet-create net04_ext {{ IPV4_NET_EXTERNAL_PREFIX }}.0/24 --name net04_ext__subnet --disable-dhcp --allocation-pool start={{ IPV4_NET_EXTERNAL_PREFIX }}.150,end={{ IPV4_NET_EXTERNAL_PREFIX }}.180 --gateway {{ IPV4_NET_EXTERNAL_PREFIX }}.1'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
+
+- description: Create net04
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+ '. /root/keystonercv3; neutron net-create net04'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
+
+- description: Create subnet_net04
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+ '. /root/keystonercv3; neutron subnet-create net04 {{ IPV4_NET_TENANT_PREFIX }}.0/24 --name net04__subnet --allocation-pool start={{ IPV4_NET_TENANT_PREFIX }}.120,end={{ IPV4_NET_TENANT_PREFIX }}.240'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
+
+- description: Create router
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+ '. /root/keystonercv3; neutron router-create net04_router01'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
+
+- description: Set gateway
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+ '. /root/keystonercv3; neutron router-gateway-set net04_router01 net04_ext'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
+
+- description: Add interface
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+ '. /root/keystonercv3; neutron router-interface-add net04_router01 net04__subnet'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
+
+- description: Allow all tcp
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+ '. /root/keystonercv3; nova secgroup-add-rule default tcp 1 65535 0.0.0.0/0'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
+
+- description: Allow all icmp
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+ '. /root/keystonercv3; nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
+
+- description: sync time
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False '*' cmd.run
+ 'service ntp stop; ntpd -gq; service ntp start'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
+
+{{ SHARED.INSTALL_DOCKER_ON_GTW() }}
+
+- description: create rc file on cfg
+ cmd: scp ctl01:/root/keystonercv3 /root
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
+
+- description: Copy rc file
+ cmd: scp /root/keystonercv3 gtw01:/root
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 30}
+ skip_fail: false
diff --git a/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/salt.yaml b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/salt.yaml
new file mode 100644
index 0000000..ef50b6d
--- /dev/null
+++ b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/salt.yaml
@@ -0,0 +1,51 @@
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import HOSTNAME_CFG01 with context %}
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import HOSTNAME_CMP01 with context %}
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import HOSTNAME_CMP02 with context %}
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import HOSTNAME_GTW01 with context %}
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import LAB_CONFIG_NAME with context %}
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import DOMAIN_NAME with context %}
+
+{% set SALT_MODELS_REPOSITORY = os_env('SALT_MODELS_REPOSITORY','https://gerrit.mcp.mirantis.com/salt-models/mcp-virtual-lab') %}
+# Other salt model repository parameters see in shared-salt.yaml
+{% set OVERRIDES = os_env('OVERRIDES', 'override_example: true') %}
+{% set OVERRIDES_FILENAME = os_env('OVERRIDES_FILENAME', '/srv/salt/reclass/classes/environment/cookied-mcp-mitaka-dvr-ceph/overrides.yml') %}
+
+{% import 'shared-salt.yaml' as SHARED with context %}
+
+{{ SHARED.MACRO_INSTALL_SALT_MASTER() }}
+
+{{ SHARED.MACRO_CLONE_RECLASS_MODELS() }}
+
+{{ SHARED.MACRO_CONFIGURE_RECLASS(FORMULA_SERVICES='\*') }}
+
+{{ SHARED.MACRO_INSTALL_SALT_MINIONS() }}
+
+{{ SHARED.MACRO_RUN_SALT_MASTER_UNDERLAY_STATES() }}
+
+{%- if OVERRIDES != '' %}
+{%- for param in OVERRIDES.splitlines() %}
+{%- set key, value = param.replace(' ','').split(':', 1) %}
+- description: Override cluster parameters
+ cmd: |
+ salt-call reclass.cluster_meta_set name='{{ key }}' value='{{ value }}' file_name='{{OVERRIDES_FILENAME}}'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 1}
+ skip_fail: false
+{%- endfor %}
+
+- description: Refresh pillar
+ cmd: salt '*' saltutil.refresh_pillar
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 1}
+ skip_fail: false
+{%- endif %}
+
+{{ SHARED.ADJUST_SL_OPTS(OVERRIDES_FILENAME='/srv/salt/reclass/classes/cluster/' + SHARED.CLUSTER_NAME + '/stacklight/server.yml') }}
+
+{{ SHARED.MACRO_GENERATE_INVENTORY() }}
+
+{{ SHARED.MACRO_BOOTSTRAP_ALL_MINIONS() }}
+
+{{SHARED.MACRO_CHECK_SALT_VERSION_SERVICES_ON_CFG()}}
+
+{{SHARED.MACRO_CHECK_SALT_VERSION_ON_NODES()}}
diff --git a/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/sl.yaml b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/sl.yaml
new file mode 100644
index 0000000..cb93ac9
--- /dev/null
+++ b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/sl.yaml
@@ -0,0 +1,184 @@
+{% from 'cookied-mcp-mitaka-dvr-ceph/underlay.yaml' import HOSTNAME_CFG01 with context %}
+{% import 'shared-sl-tests.yaml' as SHARED_SL_TESTS with context %}
+# Install docker swarm
+- description: Configure docker service
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@docker:swarm' state.sls docker.host
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Install docker swarm on master node
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@docker:swarm:role:master' state.sls docker.swarm
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Send grains to the swarm slave nodes
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@docker:swarm' state.sls salt.minion.grains
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Update mine
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@docker:swarm' mine.update
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Refresh modules
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@docker:swarm' saltutil.refresh_modules; sleep 5;
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Rerun swarm on slaves to proper token population
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@docker:swarm:role:master' state.sls docker.swarm
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Configure slave nodes
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@docker:swarm:role:manager' state.sls docker.swarm -b 1
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: List registered Docker swarm nodes
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@docker:swarm:role:master' cmd.run 'docker node ls'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Install keepalived on mon nodes
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'mon*' state.sls keepalived
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Check the VIP on mon nodes
+ cmd: |
+ SL_VIP=`salt-call --out=newline_values_only pillar.get _param:stacklight_monitor_address`;
+ echo "_param:stacklight_monitor_address (vip): ${SL_VIP}";
+ salt --hard-crash --state-output=mixed --state-verbose=False -C 'mon*' cmd.run "ip a | grep ${SL_VIP}" | grep -B1 ${SL_VIP}
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+# Install slv2 infra
+# Install MongoDB for alerta
+- description: Install MongoDB
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@mongodb:server' state.sls mongodb
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 2, delay: 10}
+ skip_fail: false
+
+- description: Install telegraf
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@telegraf:agent or I@telegraf:remote_agent' state.sls telegraf
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 2, delay: 10}
+ skip_fail: false
+
+- description: Configure Prometheus exporters, if pillar 'prometheus:exporters' exists on any server
+ cmd: |
+ if salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@prometheus:exporters' match.pillar 'prometheus:exporters' ; then
+ salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@prometheus:exporters' state.sls prometheus
+ fi
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Configure collector
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@heka:log_collector' state.sls heka.log_collector
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Install elasticsearch server
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@elasticsearch:server' state.sls elasticsearch.server -b 1
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Install kibana server
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@kibana:server' state.sls kibana.server -b 1
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Install elasticsearch client
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@elasticsearch:client' state.sls elasticsearch.client
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 2, delay: 30}
+ skip_fail: false
+
+- description: Install kibana client
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@kibana:client' state.sls kibana.client
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Check influix db
+ cmd: |
+ INFLUXDB_SERVICE=`salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@influxdb:server' test.ping 1>/dev/null 2>&1 && echo true`;
+ echo "Influxdb service presence: ${INFLUXDB_SERVICE}";
+ if [[ "$INFLUXDB_SERVICE" == "true" ]]; then
+ salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@influxdb:server' state.sls influxdb
+ fi
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: true
+
+# Collect grains needed to configure the services
+
+- description: Get grains
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@salt:minion' state.sls salt.minion.grains
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Sync modules
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@salt:minion' saltutil.refresh_modules
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Update mine
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@salt:minion' mine.update; sleep 5;
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 5, delay: 15}
+ skip_fail: false
+
+# Configure the services running in Docker Swarm
+- description: Install prometheus alertmanager
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@docker:swarm' state.sls prometheus,heka.remote_collector -b 1
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: run docker state
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@docker:swarm:role:master' state.sls docker
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: docker ps
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@docker:swarm' dockerng.ps
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+- description: Configure Grafana dashboards and datasources
+ cmd: sleep 30; salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@grafana:client' state.sls grafana.client
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 2, delay: 10}
+ skip_fail: false
+
+- description: Run salt minion to create cert files
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False "*" state.sls salt.minion
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: false
+
+{{ SHARED_SL_TESTS.MACRO_CLONE_SL_TESTS() }}
+{{ SHARED_SL_TESTS.MACRO_CONFIGURE_TESTS() }}
diff --git a/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/underlay--meta-data.yaml b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/underlay--meta-data.yaml
new file mode 100644
index 0000000..3699401
--- /dev/null
+++ b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/underlay--meta-data.yaml
@@ -0,0 +1,4 @@
+| # All the data below will be stored as a string object
+ instance-id: iid-local1
+ hostname: {hostname}
+ local-hostname: {hostname}
diff --git a/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/underlay--user-data-cfg01.yaml b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/underlay--user-data-cfg01.yaml
new file mode 100644
index 0000000..d75dab1
--- /dev/null
+++ b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/underlay--user-data-cfg01.yaml
@@ -0,0 +1,77 @@
+| # All the data below will be stored as a string object
+ #cloud-config, see http://cloudinit.readthedocs.io/en/latest/topics/examples.html
+
+ ssh_pwauth: True
+ users:
+ - name: root
+ sudo: ALL=(ALL) NOPASSWD:ALL
+ shell: /bin/bash
+ ssh_authorized_keys:
+ {% for key in config.underlay.ssh_keys %}
+ - ssh-rsa {{ key['public'] }}
+ {% endfor %}
+
+ disable_root: false
+ chpasswd:
+ list: |
+ root:r00tme
+ expire: False
+
+ bootcmd:
+ # Enable root access
+ - sed -i -e '/^PermitRootLogin/s/^.*$/PermitRootLogin yes/' /etc/ssh/sshd_config
+ - service sshd restart
+ output:
+ all: '| tee -a /var/log/cloud-init-output.log /dev/tty0'
+
+ runcmd:
+ # Configure dhclient
+ - sudo echo "nameserver {gateway}" >> /etc/resolvconf/resolv.conf.d/base
+ - sudo resolvconf -u
+
+ # Prepare network connection
+ - sudo ifdown ens3
+ - sudo ip r d default || true # remove existing default route to get it from dhcp
+ - sudo ifup ens3
+ #- sudo route add default gw {gateway} {interface_name}
+
+ # Create swap
+ - fallocate -l 4G /swapfile
+ - chmod 600 /swapfile
+ - mkswap /swapfile
+ - swapon /swapfile
+ - echo "/swapfile none swap defaults 0 0" >> /etc/fstab
+
+ - echo "nameserver 172.18.208.44" >> /etc/resolv.conf;
+
+ # Enable grub menu using updated config below
+ - update-grub
+
+ - mkdir -p /srv/salt/reclass/nodes
+ - systemctl enable salt-master
+ - systemctl enable salt-minion
+ - systemctl start salt-master
+ - systemctl start salt-minion
+ - salt-call -l info --timeout=120 test.ping
+
+ write_files:
+ - path: /etc/default/grub.d/97-enable-grub-menu.cfg
+ content: |
+ GRUB_RECORDFAIL_TIMEOUT=30
+ GRUB_TIMEOUT=3
+ GRUB_TIMEOUT_STYLE=menu
+
+ - path: /etc/network/interfaces
+ content: |
+ auto ens3
+ iface ens3 inet dhcp
+
+ - path: /root/.ssh/config
+ owner: root:root
+ permissions: '0600'
+ content: |
+ Host *
+ ServerAliveInterval 300
+ ServerAliveCountMax 10
+ StrictHostKeyChecking no
+ UserKnownHostsFile /dev/null
diff --git a/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/underlay--user-data1604.yaml b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/underlay--user-data1604.yaml
new file mode 100644
index 0000000..3fbb777
--- /dev/null
+++ b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/underlay--user-data1604.yaml
@@ -0,0 +1,50 @@
+| # All the data below will be stored as a string object
+ #cloud-config, see http://cloudinit.readthedocs.io/en/latest/topics/examples.html
+
+ ssh_pwauth: True
+ users:
+ - name: root
+ sudo: ALL=(ALL) NOPASSWD:ALL
+ shell: /bin/bash
+ ssh_authorized_keys:
+ {% for key in config.underlay.ssh_keys %}
+ - ssh-rsa {{ key['public'] }}
+ {% endfor %}
+
+ disable_root: false
+ chpasswd:
+ list: |
+ root:r00tme
+ expire: False
+
+ bootcmd:
+ # Enable root access
+ - sed -i -e '/^PermitRootLogin/s/^.*$/PermitRootLogin yes/' /etc/ssh/sshd_config
+ - service sshd restart
+ output:
+ all: '| tee -a /var/log/cloud-init-output.log /dev/tty0'
+
+ runcmd:
+ - export TERM=linux
+ - export LANG=C
+ # Configure dhclient
+ - sudo echo "nameserver {gateway}" >> /etc/resolvconf/resolv.conf.d/base
+ - sudo resolvconf -u
+
+ # Prepare network connection
+ - sudo ifup ens3
+ #- sudo route add default gw {gateway} {interface_name}
+
+ # Create swap
+ - fallocate -l 4G /swapfile
+ - chmod 600 /swapfile
+ - mkswap /swapfile
+ - swapon /swapfile
+ - echo "/swapfile none swap defaults 0 0" >> /etc/fstab
+
+ write_files:
+ - path: /etc/network/interfaces
+ content: |
+ auto ens3
+ iface ens3 inet dhcp
+
diff --git a/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/underlay.yaml b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/underlay.yaml
new file mode 100644
index 0000000..248d63e
--- /dev/null
+++ b/tcp_tests/templates/cookied-mcp-mitaka-dvr-ceph/underlay.yaml
@@ -0,0 +1,771 @@
+# Set the repository suite, one of the: 'nightly', 'testing', 'stable', or any other required
+{% set REPOSITORY_SUITE = os_env('REPOSITORY_SUITE', 'testing') %}
+
+{% import 'cookied-mcp-mitaka-dvr-ceph/underlay--meta-data.yaml' as CLOUDINIT_META_DATA with context %}
+{% import 'cookied-mcp-mitaka-dvr-ceph/underlay--user-data-cfg01.yaml' as CLOUDINIT_USER_DATA_CFG01 with context %}
+{% import 'cookied-mcp-mitaka-dvr-ceph/underlay--user-data1604.yaml' as CLOUDINIT_USER_DATA_1604 with context %}
+
+aliases:
+ - &interface_model {{ os_env('INTERFACE_MODEL', 'virtio') }}
+ - &cloudinit_meta_data {{ CLOUDINIT_META_DATA }}
+ - &cloudinit_user_data_cfg01 {{ CLOUDINIT_USER_DATA_CFG01 }}
+ - &cloudinit_user_data_1604 {{ CLOUDINIT_USER_DATA_1604 }}
+
+{% set LAB_CONFIG_NAME = os_env('LAB_CONFIG_NAME', 'cookied-mcp-mitaka-dvr-ceph') %}
+{% set DOMAIN_NAME = os_env('DOMAIN_NAME', LAB_CONFIG_NAME) + '.local' %}
+{% set HOSTNAME_CFG01 = os_env('HOSTNAME_CFG01', 'cfg01.') %}
+{% set HOSTNAME_CTL01 = os_env('HOSTNAME_CTL01', 'ctl01.') %}
+{% set HOSTNAME_CTL02 = os_env('HOSTNAME_CTL02', 'ctl02.') %}
+{% set HOSTNAME_CTL03 = os_env('HOSTNAME_CTL03', 'ctl03.') %}
+{% set HOSTNAME_CMP01 = os_env('HOSTNAME_CMP01', 'cmp001.') %}
+{% set HOSTNAME_CMP02 = os_env('HOSTNAME_CMP02', 'cmp002.') %}
+{% set HOSTNAME_MON01 = os_env('HOSTNAME_MON01', 'mon01.') %}
+{% set HOSTNAME_MON02 = os_env('HOSTNAME_MON02', 'mon02.') %}
+{% set HOSTNAME_MON03 = os_env('HOSTNAME_MON03', 'mon03.') %}
+{% set HOSTNAME_CMN01 = os_env('HOSTNAME_CMN01', 'cmn01.') %}
+{% set HOSTNAME_CMN02 = os_env('HOSTNAME_CMN02', 'cmn02.') %}
+{% set HOSTNAME_CMN03 = os_env('HOSTNAME_CMN03', 'cmn03.') %}
+{% set HOSTNAME_RGW01 = os_env('HOSTNAME_CMN01', 'rgw01.') %}
+{% set HOSTNAME_RGW02 = os_env('HOSTNAME_CMN02', 'rgw02.') %}
+{% set HOSTNAME_RGW03 = os_env('HOSTNAME_CMN03', 'rgw03.') %}
+{% set HOSTNAME_OSD01 = os_env('HOSTNAME_OSD01', 'osd001.') %}
+{% set HOSTNAME_OSD02 = os_env('HOSTNAME_OSD02', 'osd002.') %}
+{% set HOSTNAME_GTW01 = os_env('HOSTNAME_GTW01', 'gtw01.') %}
+{% set HOSTNAME_PRX01 = os_env('HOSTNAME_PRX01', 'prx01.') %}
+
+template:
+ devops_settings:
+ env_name: {{ os_env('ENV_NAME', 'cookied-mcp-mitaka-dvr-ceph_' + REPOSITORY_SUITE + "_" + os_env('BUILD_NUMBER', '')) }}
+
+ address_pools:
+ private-pool01:
+ net: {{ os_env('PRIVATE_ADDRESS_POOL01', '10.60.0.0/16:24') }}
+ params:
+ ip_reserved:
+ gateway: +1
+ l2_network_device: +1
+ default_{{ HOSTNAME_CFG01 }}: +100
+ default_{{ HOSTNAME_CTL01 }}: +101
+ default_{{ HOSTNAME_CTL02 }}: +102
+ default_{{ HOSTNAME_CTL03 }}: +103
+ default_{{ HOSTNAME_CMP01 }}: +105
+ default_{{ HOSTNAME_CMP02 }}: +106
+ default_{{ HOSTNAME_MON01 }}: +107
+ default_{{ HOSTNAME_MON02 }}: +108
+ default_{{ HOSTNAME_MON03 }}: +109
+ default_{{ HOSTNAME_OSD01 }}: +94
+ default_{{ HOSTNAME_OSD02 }}: +95
+ default_{{ HOSTNAME_CMN01 }}: +96
+ default_{{ HOSTNAME_CMN02 }}: +97
+ default_{{ HOSTNAME_CMN03 }}: +98
+ default_{{ HOSTNAME_RGW01 }}: +76
+ default_{{ HOSTNAME_RGW02 }}: +77
+ default_{{ HOSTNAME_RGW03 }}: +78
+ default_{{ HOSTNAME_GTW01 }}: +110
+ default_{{ HOSTNAME_PRX01 }}: +121
+ ip_ranges:
+ dhcp: [+90, -10]
+
+ admin-pool01:
+ net: {{ os_env('ADMIN_ADDRESS_POOL01', '10.70.0.0/16:24') }}
+ params:
+ ip_reserved:
+ gateway: +1
+ l2_network_device: +1
+ default_{{ HOSTNAME_CFG01 }}: +90
+ default_{{ HOSTNAME_CTL01 }}: +101
+ default_{{ HOSTNAME_CTL02 }}: +102
+ default_{{ HOSTNAME_CTL03 }}: +103
+ default_{{ HOSTNAME_CMP01 }}: +105
+ default_{{ HOSTNAME_CMP02 }}: +106
+ default_{{ HOSTNAME_MON01 }}: +107
+ default_{{ HOSTNAME_MON02 }}: +108
+ default_{{ HOSTNAME_MON03 }}: +109
+ default_{{ HOSTNAME_OSD01 }}: +94
+ default_{{ HOSTNAME_OSD02 }}: +95
+ default_{{ HOSTNAME_CMN01 }}: +96
+ default_{{ HOSTNAME_CMN02 }}: +97
+ default_{{ HOSTNAME_CMN03 }}: +98
+ default_{{ HOSTNAME_RGW01 }}: +76
+ default_{{ HOSTNAME_RGW02 }}: +77
+ default_{{ HOSTNAME_RGW03 }}: +78
+ default_{{ HOSTNAME_GTW01 }}: +110
+ default_{{ HOSTNAME_PRX01 }}: +121
+ ip_ranges:
+ dhcp: [+90, -10]
+
+ tenant-pool01:
+ net: {{ os_env('TENANT_ADDRESS_POOL01', '10.80.0.0/16:24') }}
+ params:
+ ip_reserved:
+ gateway: +1
+ l2_network_device: +1
+ default_{{ HOSTNAME_CFG01 }}: +100
+ default_{{ HOSTNAME_CTL01 }}: +101
+ default_{{ HOSTNAME_CTL02 }}: +102
+ default_{{ HOSTNAME_CTL03 }}: +103
+ default_{{ HOSTNAME_CMP01 }}: +105
+ default_{{ HOSTNAME_CMP02 }}: +106
+ default_{{ HOSTNAME_MON01 }}: +107
+ default_{{ HOSTNAME_MON02 }}: +108
+ default_{{ HOSTNAME_MON03 }}: +109
+ default_{{ HOSTNAME_OSD01 }}: +94
+ default_{{ HOSTNAME_OSD02 }}: +95
+ default_{{ HOSTNAME_CMN01 }}: +96
+ default_{{ HOSTNAME_CMN02 }}: +97
+ default_{{ HOSTNAME_CMN03 }}: +98
+ default_{{ HOSTNAME_RGW01 }}: +76
+ default_{{ HOSTNAME_RGW02 }}: +77
+ default_{{ HOSTNAME_RGW03 }}: +78
+ default_{{ HOSTNAME_GTW01 }}: +110
+ default_{{ HOSTNAME_PRX01 }}: +121
+ ip_ranges:
+ dhcp: [+10, -10]
+
+ external-pool01:
+ net: {{ os_env('EXTERNAL_ADDRESS_POOL01', '10.90.0.0/16:24') }}
+ params:
+ ip_reserved:
+ gateway: +1
+ l2_network_device: +1
+ default_{{ HOSTNAME_CFG01 }}: +100
+ default_{{ HOSTNAME_CTL01 }}: +101
+ default_{{ HOSTNAME_CTL02 }}: +102
+ default_{{ HOSTNAME_CTL03 }}: +103
+ default_{{ HOSTNAME_CMP01 }}: +105
+ default_{{ HOSTNAME_CMP02 }}: +106
+ default_{{ HOSTNAME_MON01 }}: +107
+ default_{{ HOSTNAME_MON02 }}: +108
+ default_{{ HOSTNAME_MON03 }}: +109
+ default_{{ HOSTNAME_OSD01 }}: +94
+ default_{{ HOSTNAME_OSD02 }}: +95
+ default_{{ HOSTNAME_CMN01 }}: +96
+ default_{{ HOSTNAME_CMN02 }}: +97
+ default_{{ HOSTNAME_CMN03 }}: +98
+ default_{{ HOSTNAME_RGW01 }}: +76
+ default_{{ HOSTNAME_RGW02 }}: +77
+ default_{{ HOSTNAME_RGW03 }}: +78
+ default_{{ HOSTNAME_GTW01 }}: +110
+ default_{{ HOSTNAME_PRX01 }}: +121
+ ip_ranges:
+ dhcp: [+10, -10]
+
+
+ groups:
+ - name: default
+ driver:
+ name: devops.driver.libvirt
+ params:
+ connection_string: !os_env CONNECTION_STRING, qemu:///system
+ storage_pool_name: !os_env STORAGE_POOL_NAME, default
+ stp: False
+ hpet: False
+ enable_acpi: true
+ use_host_cpu: !os_env DRIVER_USE_HOST_CPU, true
+ use_hugepages: !os_env DRIVER_USE_HUGEPAGES, false
+
+ network_pools:
+ admin: admin-pool01
+ private: private-pool01
+ tenant: tenant-pool01
+ external: external-pool01
+
+ l2_network_devices:
+ private:
+ address_pool: private-pool01
+ dhcp: false
+ forward:
+ mode: route
+
+ admin:
+ address_pool: admin-pool01
+ dhcp: true
+ forward:
+ mode: nat
+
+ tenant:
+ address_pool: tenant-pool01
+ dhcp: false
+
+ external:
+ address_pool: external-pool01
+ dhcp: true
+ forward:
+ mode: route
+
+
+ group_volumes:
+ - name: cloudimage1604 # This name is used for 'backing_store' option for node volumes.
+ source_image: !os_env IMAGE_PATH1604 # https://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img
+ format: qcow2
+ - name: cfg01_day01_image # Pre-configured day01 image
+ source_image: {{ os_env('IMAGE_PATH_CFG01_DAY01', os_env('IMAGE_PATH1604')) }} # http://images.mirantis.com/cfg01-day01.qcow2 or fallback to IMAGE_PATH1604
+ format: qcow2
+ - name: mcp_ubuntu_1604_image # Pre-configured image for VCP nodes initially based on kvm nodes.
+ # http://images.mirantis.com/ubuntu-16-04-x64-latest.qcow2 (preffered)
+ # or
+ # https://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img
+ source_image: {{ os_env('MCP_IMAGE_PATH1604', os_env('IMAGE_PATH1604')) }}
+ format: qcow2
+
+ nodes:
+ - name: {{ HOSTNAME_CFG01 }}
+ role: salt_master
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 2
+ memory: !os_env SLAVE_NODE_MEMORY, 8192
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cfg01_day01_image
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_cfg01
+
+ interfaces:
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+ network_config:
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private
+
+ - name: {{ HOSTNAME_CTL01 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 2
+ memory: !os_env SLAVE_NODE_MEMORY, 16384
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: mcp_ubuntu_1604_image
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: &interfaces
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+ network_config: &network_config
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private
+
+ - name: {{ HOSTNAME_CTL02 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 2
+ memory: !os_env SLAVE_NODE_MEMORY, 16384
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: mcp_ubuntu_1604_image
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+
+ - name: {{ HOSTNAME_CTL03 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 2
+ memory: !os_env SLAVE_NODE_MEMORY, 16384
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: mcp_ubuntu_1604_image
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+
+ - name: {{ HOSTNAME_MON01 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 3
+ memory: !os_env SLAVE_NODE_MEMORY, 6144
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: mcp_ubuntu_1604_image
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+
+ - name: {{ HOSTNAME_MON02 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 3
+ memory: !os_env SLAVE_NODE_MEMORY, 6144
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: mcp_ubuntu_1604_image
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+
+ - name: {{ HOSTNAME_MON03 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 3
+ memory: !os_env SLAVE_NODE_MEMORY, 6144
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: mcp_ubuntu_1604_image
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+
+ - name: {{ HOSTNAME_PRX01 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 1
+ memory: !os_env SLAVE_NODE_MEMORY, 8192
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: mcp_ubuntu_1604_image
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+
+
+ - name: {{ HOSTNAME_CMP01 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 3
+ memory: !os_env SLAVE_NODE_MEMORY, 4096
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cloudimage1604
+ format: qcow2
+ - name: cinder
+ capacity: 50
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+
+ interfaces: &all_interfaces
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+ - label: ens5
+ l2_network_device: tenant
+ interface_model: *interface_model
+ - label: ens6
+ l2_network_device: external
+ interface_model: *interface_model
+ network_config: &all_network_config
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private
+ ens5:
+ networks:
+ - tenant
+ ens6:
+ networks:
+ - external
+
+ - name: {{ HOSTNAME_CMP02 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 3
+ memory: !os_env SLAVE_NODE_MEMORY, 4096
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cloudimage1604
+ format: qcow2
+ - name: cinder
+ capacity: 50
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *all_interfaces
+ network_config: *all_network_config
+
+ - name: {{ HOSTNAME_GTW01 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 1
+ memory: !os_env SLAVE_NODE_MEMORY, 2048
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cloudimage1604
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *all_interfaces
+ network_config: *all_network_config
+
+ - name: {{ HOSTNAME_CMN01 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 2
+ memory: !os_env SLAVE_NODE_MEMORY, 2048
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cloudimage1604
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+
+ - name: {{ HOSTNAME_CMN02 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 2
+ memory: !os_env SLAVE_NODE_MEMORY, 2048
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cloudimage1604
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+
+ - name: {{ HOSTNAME_CMN03 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 2
+ memory: !os_env SLAVE_NODE_MEMORY, 2048
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cloudimage1604
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+
+ - name: {{ HOSTNAME_OSD01 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 2
+ memory: !os_env SLAVE_NODE_MEMORY, 2048
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cloudimage1604
+ format: qcow2
+ - name: ceph_osd
+ capacity: 50
+ format: qcow2
+ - name: ceph_journal
+ capacity: 50
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+
+ - name: {{ HOSTNAME_OSD02 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 2
+ memory: !os_env SLAVE_NODE_MEMORY, 2048
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cloudimage1604
+ format: qcow2
+ - name: ceph_osd
+ capacity: 50
+ format: qcow2
+ - name: ceph_journal
+ capacity: 50
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+
+ - name: {{ HOSTNAME_RGW01 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 2
+ memory: !os_env SLAVE_NODE_MEMORY, 2048
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cloudimage1604
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+
+ - name: {{ HOSTNAME_RGW02 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 2
+ memory: !os_env SLAVE_NODE_MEMORY, 2048
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cloudimage1604
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
+ - name: {{ HOSTNAME_RGW03 }}
+ role: salt_minion
+ params:
+ vcpu: !os_env SLAVE_NODE_CPU, 2
+ memory: !os_env SLAVE_NODE_MEMORY, 2048
+ boot:
+ - hd
+ cloud_init_volume_name: iso
+ cloud_init_iface_up: ens3
+ volumes:
+ - name: system
+ capacity: !os_env NODE_VOLUME_SIZE, 150
+ backing_store: cloudimage1604
+ format: qcow2
+ - name: iso # Volume with name 'iso' will be used
+ # for store image with cloud-init metadata.
+ capacity: 1
+ format: raw
+ device: cdrom
+ bus: ide
+ cloudinit_meta_data: *cloudinit_meta_data
+ cloudinit_user_data: *cloudinit_user_data_1604
+
+ interfaces: *interfaces
+ network_config: *network_config
\ No newline at end of file
diff --git a/tcp_tests/templates/cookied-mcp-mitaka-dvr/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-mitaka-dvr/_context-environment.yaml
index 65f4131..931efcb 100644
--- a/tcp_tests/templates/cookied-mcp-mitaka-dvr/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-mitaka-dvr/_context-environment.yaml
@@ -135,6 +135,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
diff --git a/tcp_tests/templates/cookied-mcp-mitaka-ovs/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-mitaka-ovs/_context-environment.yaml
index 65f4131..931efcb 100644
--- a/tcp_tests/templates/cookied-mcp-mitaka-ovs/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-mitaka-ovs/_context-environment.yaml
@@ -135,6 +135,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
diff --git a/tcp_tests/templates/cookied-mcp-newton-dvr/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-newton-dvr/_context-environment.yaml
index 6afe16e..6d958a6 100644
--- a/tcp_tests/templates/cookied-mcp-newton-dvr/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-newton-dvr/_context-environment.yaml
@@ -135,6 +135,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
diff --git a/tcp_tests/templates/cookied-mcp-newton-dvr/openstack.yaml b/tcp_tests/templates/cookied-mcp-newton-dvr/openstack.yaml
index 7260beb..df28c5a 100644
--- a/tcp_tests/templates/cookied-mcp-newton-dvr/openstack.yaml
+++ b/tcp_tests/templates/cookied-mcp-newton-dvr/openstack.yaml
@@ -186,9 +186,3 @@
node_name: {{ HOSTNAME_CFG01 }}
retry: {count: 1, delay: 30}
skip_fail: false
-
-- description: WORKAROUND PROD-23354
- cmd: sed -n 's/max_microversion = 2.42/max_microversion = 2.38/;w /var/log/lvm_mcp_newton.conf' /var/log/lvm_mcp.conf
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
diff --git a/tcp_tests/templates/cookied-mcp-newton-ovs/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-newton-ovs/_context-environment.yaml
index 7baf03e..4970aec 100644
--- a/tcp_tests/templates/cookied-mcp-newton-ovs/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-newton-ovs/_context-environment.yaml
@@ -137,6 +137,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
diff --git a/tcp_tests/templates/cookied-mcp-newton-ovs/openstack.yaml b/tcp_tests/templates/cookied-mcp-newton-ovs/openstack.yaml
index 04871da..c10aa28 100644
--- a/tcp_tests/templates/cookied-mcp-newton-ovs/openstack.yaml
+++ b/tcp_tests/templates/cookied-mcp-newton-ovs/openstack.yaml
@@ -208,9 +208,3 @@
node_name: {{ HOSTNAME_CFG01 }}
retry: {count: 1, delay: 30}
skip_fail: false
-
-- description: WORKAROUND PROD-23354
- cmd: sed -n 's/max_microversion = 2.42/max_microversion = 2.38/;w /var/log/lvm_mcp_newton.conf' /var/log/lvm_mcp.conf
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
diff --git a/tcp_tests/templates/cookied-mcp-ocata-dop-sl2/salt-context-environment.yaml b/tcp_tests/templates/cookied-mcp-ocata-dop-sl2/salt-context-environment.yaml
index a17173d..5b1e465 100644
--- a/tcp_tests/templates/cookied-mcp-ocata-dop-sl2/salt-context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-ocata-dop-sl2/salt-context-environment.yaml
@@ -176,6 +176,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
diff --git a/tcp_tests/templates/cookied-mcp-ocata-dvr-vxlan/salt-context-environment.yaml b/tcp_tests/templates/cookied-mcp-ocata-dvr-vxlan/salt-context-environment.yaml
index e60baf8..2141209 100644
--- a/tcp_tests/templates/cookied-mcp-ocata-dvr-vxlan/salt-context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-ocata-dvr-vxlan/salt-context-environment.yaml
@@ -326,6 +326,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
diff --git a/tcp_tests/templates/cookied-mcp-ocata-dvr/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-ocata-dvr/_context-environment.yaml
index f7518bc..3a11834 100644
--- a/tcp_tests/templates/cookied-mcp-ocata-dvr/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-ocata-dvr/_context-environment.yaml
@@ -135,6 +135,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
diff --git a/tcp_tests/templates/cookied-mcp-ocata-ovs/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-ocata-ovs/_context-environment.yaml
index 7baf03e..4970aec 100644
--- a/tcp_tests/templates/cookied-mcp-ocata-ovs/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-ocata-ovs/_context-environment.yaml
@@ -137,6 +137,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
diff --git a/tcp_tests/templates/cookied-mcp-pike-dpdk/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-pike-dpdk/_context-environment.yaml
index 0cd60ba..4a6ee73 100644
--- a/tcp_tests/templates/cookied-mcp-pike-dpdk/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-pike-dpdk/_context-environment.yaml
@@ -152,6 +152,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -165,3 +167,10 @@
role: single_ovs_br_floating
external_address: 10.90.0.110
external_network_netmask: 255.255.255.0
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-mcp-pike-dvr-ceph/vcp-context-environment.yaml b/tcp_tests/templates/cookied-mcp-pike-dvr-ceph/vcp-context-environment.yaml
index c89ec89..4fbb4b4 100644
--- a/tcp_tests/templates/cookied-mcp-pike-dvr-ceph/vcp-context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-pike-dvr-ceph/vcp-context-environment.yaml
@@ -84,6 +84,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -203,3 +205,11 @@
role: single_dhcp
ens4:
role: single_ctl
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
+
diff --git a/tcp_tests/templates/cookied-mcp-pike-dvr-ssl-barbican/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-pike-dvr-ssl-barbican/_context-environment.yaml
index f704f65..00125aa 100644
--- a/tcp_tests/templates/cookied-mcp-pike-dvr-ssl-barbican/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-pike-dvr-ssl-barbican/_context-environment.yaml
@@ -121,6 +121,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -130,3 +132,10 @@
role: bond0_ab_ovs_vxlan_mesh
ens6:
role: bond1_ab_ovs_floating
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-mcp-pike-dvr-ssl-barbican/underlay.yaml b/tcp_tests/templates/cookied-mcp-pike-dvr-ssl-barbican/underlay.yaml
index 634bff3..e1befcb 100644
--- a/tcp_tests/templates/cookied-mcp-pike-dvr-ssl-barbican/underlay.yaml
+++ b/tcp_tests/templates/cookied-mcp-pike-dvr-ssl-barbican/underlay.yaml
@@ -297,7 +297,7 @@
role: salt_minion
params:
vcpu: !os_env SLAVE_NODE_CPU, 2
- memory: !os_env SLAVE_NODE_MEMORY, 4096
+ memory: !os_env SLAVE_NODE_MEMORY, 16384
boot:
- hd
cloud_init_volume_name: iso
@@ -323,7 +323,7 @@
role: salt_minion
params:
vcpu: !os_env SLAVE_NODE_CPU, 2
- memory: !os_env SLAVE_NODE_MEMORY, 4096
+ memory: !os_env SLAVE_NODE_MEMORY, 16384
boot:
- hd
cloud_init_volume_name: iso
@@ -349,7 +349,7 @@
role: salt_minion
params:
vcpu: !os_env SLAVE_NODE_CPU, 2
- memory: !os_env SLAVE_NODE_MEMORY, 4096
+ memory: !os_env SLAVE_NODE_MEMORY, 16384
boot:
- hd
cloud_init_volume_name: iso
diff --git a/tcp_tests/templates/cookied-mcp-pike-dvr-ssl/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-pike-dvr-ssl/_context-environment.yaml
index 83998a7..f5e74ab 100644
--- a/tcp_tests/templates/cookied-mcp-pike-dvr-ssl/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-pike-dvr-ssl/_context-environment.yaml
@@ -187,6 +187,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -229,3 +231,11 @@
role: single_dhcp
ens4:
role: single_ctl
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
+
diff --git a/tcp_tests/templates/cookied-mcp-pike-dvr/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-pike-dvr/_context-environment.yaml
index f1ba914..7c271fb 100644
--- a/tcp_tests/templates/cookied-mcp-pike-dvr/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-pike-dvr/_context-environment.yaml
@@ -186,6 +186,8 @@
reclass_storage_name: openstack_gateway_node01
roles:
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -228,3 +230,11 @@
role: single_dhcp
ens4:
role: single_ctl
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
+
diff --git a/tcp_tests/templates/cookied-mcp-pike-ovs/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-pike-ovs/_context-environment.yaml
index d57ceaf..329bca0 100644
--- a/tcp_tests/templates/cookied-mcp-pike-ovs/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-pike-ovs/_context-environment.yaml
@@ -187,6 +187,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -229,3 +231,10 @@
role: single_dhcp
ens4:
role: single_ctl
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-mcp-queens-dvr-ceph/cookiecutter-context-dvr-ceph.yaml b/tcp_tests/templates/cookied-mcp-queens-dvr-ceph/cookiecutter-context-dvr-ceph.yaml
index bfcc3fd..9f66d16 100644
--- a/tcp_tests/templates/cookied-mcp-queens-dvr-ceph/cookiecutter-context-dvr-ceph.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-dvr-ceph/cookiecutter-context-dvr-ceph.yaml
@@ -185,7 +185,8 @@
openstack_nova_compute_reserved_host_memory_mb: '900'
openstack_ovs_dvr_enabled: 'True'
openstack_ovs_encapsulation_type: vxlan
- openstack_proxy_address: 10.167.4.80
+ openstack_proxy_address: 172.17.16.80 # external network endpoint
+ openstack_proxy_vip_interface: ens5
openstack_proxy_hostname: prx
openstack_proxy_node01_address: 10.167.4.81
openstack_proxy_node01_hostname: prx01
diff --git a/tcp_tests/templates/cookied-mcp-queens-dvr-ceph/underlay.yaml b/tcp_tests/templates/cookied-mcp-queens-dvr-ceph/underlay.yaml
index fe31142..850fedf 100644
--- a/tcp_tests/templates/cookied-mcp-queens-dvr-ceph/underlay.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-dvr-ceph/underlay.yaml
@@ -662,8 +662,26 @@
cloudinit_meta_data: *cloudinit_meta_data
cloudinit_user_data: *cloudinit_user_data_1604
- interfaces: *interfaces
- network_config: *network_config
+ interfaces:
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+ - label: ens5
+ l2_network_device: external
+ interface_model: *interface_model
+ network_config:
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private
+ ens5:
+ networks:
+ - external
- name: {{ HOSTNAME_CMP01 }}
role: salt_minion
diff --git a/tcp_tests/templates/cookied-mcp-queens-dvr-ceph/vcp-context-environment.yaml b/tcp_tests/templates/cookied-mcp-queens-dvr-ceph/vcp-context-environment.yaml
index 28831da..6d9ed2d 100644
--- a/tcp_tests/templates/cookied-mcp-queens-dvr-ceph/vcp-context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-dvr-ceph/vcp-context-environment.yaml
@@ -55,13 +55,17 @@
prx01.cookied-mcp-queens-dvr-ceph.local:
reclass_storage_name: openstack_proxy_node01
roles:
- - openstack_proxy
+ #- openstack_proxy # another VIP interface used
- linux_system_codename_xenial
interfaces:
ens3:
role: single_dhcp
ens4:
role: single_ctl
+ ens5:
+ role: single_external
+ external_address: 172.17.16.121
+ external_network_netmask: 255.255.255.0
# Generator-based computes. For compatibility only
cmp<<count>>.cookied-mcp-queens-dvr-ceph.local:
@@ -84,6 +88,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -204,3 +210,10 @@
role: single_dhcp
ens4:
role: single_ctl
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-mcp-queens-dvr-ssl-barbican/_context-cookiecutter-mcp-queens-dvr-ssl-barbican.yaml b/tcp_tests/templates/cookied-mcp-queens-dvr-ssl-barbican/_context-cookiecutter-mcp-queens-dvr-ssl-barbican.yaml
index 1cec753..af06e9a 100644
--- a/tcp_tests/templates/cookied-mcp-queens-dvr-ssl-barbican/_context-cookiecutter-mcp-queens-dvr-ssl-barbican.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-dvr-ssl-barbican/_context-cookiecutter-mcp-queens-dvr-ssl-barbican.yaml
@@ -100,7 +100,8 @@
openstack_nova_compute_nfv_req_enabled: 'False'
openstack_ovs_dvr_enabled: 'True'
openstack_ovs_encapsulation_type: vxlan
- openstack_proxy_address: 172.16.10.80
+ openstack_proxy_address: 172.17.16.80 # external network proxy VIP
+ openstack_proxy_vip_interface: ens5
openstack_proxy_hostname: prx
openstack_proxy_node01_address: 172.16.10.121
openstack_proxy_node01_hostname: prx01
diff --git a/tcp_tests/templates/cookied-mcp-queens-dvr-ssl-barbican/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-queens-dvr-ssl-barbican/_context-environment.yaml
index 7102e9c..6022fbd 100644
--- a/tcp_tests/templates/cookied-mcp-queens-dvr-ssl-barbican/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-dvr-ssl-barbican/_context-environment.yaml
@@ -91,13 +91,17 @@
prx01.mcp-queens-dvr-ssl.local:
reclass_storage_name: openstack_proxy_node01
roles:
- - openstack_proxy
+ #- openstack_proxy # another VIP interface used
- linux_system_codename_xenial
interfaces:
ens3:
role: single_dhcp
ens4:
role: single_ctl
+ ens5:
+ role: single_external
+ external_address: 172.17.16.121
+ external_network_netmask: 255.255.255.0
# Generator-based computes. For compatibility only
cmp<<count>>.mcp-queens-dvr-ssl.local:
@@ -121,6 +125,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -130,3 +136,10 @@
role: bond0_ab_ovs_vxlan_mesh
ens6:
role: bond1_ab_ovs_floating
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-mcp-queens-dvr-ssl-barbican/underlay.yaml b/tcp_tests/templates/cookied-mcp-queens-dvr-ssl-barbican/underlay.yaml
index 8cee171..b81481b 100644
--- a/tcp_tests/templates/cookied-mcp-queens-dvr-ssl-barbican/underlay.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-dvr-ssl-barbican/underlay.yaml
@@ -294,7 +294,7 @@
role: salt_minion
params:
vcpu: !os_env SLAVE_NODE_CPU, 2
- memory: !os_env SLAVE_NODE_MEMORY, 4096
+ memory: !os_env SLAVE_NODE_MEMORY, 16384
boot:
- hd
cloud_init_volume_name: iso
@@ -320,7 +320,7 @@
role: salt_minion
params:
vcpu: !os_env SLAVE_NODE_CPU, 2
- memory: !os_env SLAVE_NODE_MEMORY, 4096
+ memory: !os_env SLAVE_NODE_MEMORY, 16384
boot:
- hd
cloud_init_volume_name: iso
@@ -346,7 +346,7 @@
role: salt_minion
params:
vcpu: !os_env SLAVE_NODE_CPU, 2
- memory: !os_env SLAVE_NODE_MEMORY, 4096
+ memory: !os_env SLAVE_NODE_MEMORY, 16384
boot:
- hd
cloud_init_volume_name: iso
@@ -391,8 +391,26 @@
cloudinit_meta_data: *cloudinit_meta_data
cloudinit_user_data: *cloudinit_user_data_1604
- interfaces: *interfaces
- network_config: *network_config
+ interfaces:
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+ - label: ens5
+ l2_network_device: external
+ interface_model: *interface_model
+ network_config:
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private
+ ens5:
+ networks:
+ - external
- name: {{ HOSTNAME_CMP01 }}
role: salt_minion
diff --git a/tcp_tests/templates/cookied-mcp-queens-dvr-ssl/_context-cookiecutter-mcp-queens-dvr-ssl.yaml b/tcp_tests/templates/cookied-mcp-queens-dvr-ssl/_context-cookiecutter-mcp-queens-dvr-ssl.yaml
index dcc8bc5..2d36a8b 100644
--- a/tcp_tests/templates/cookied-mcp-queens-dvr-ssl/_context-cookiecutter-mcp-queens-dvr-ssl.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-dvr-ssl/_context-cookiecutter-mcp-queens-dvr-ssl.yaml
@@ -100,7 +100,8 @@
openstack_nova_compute_nfv_req_enabled: 'False'
openstack_ovs_dvr_enabled: 'True'
openstack_ovs_encapsulation_type: vxlan
- openstack_proxy_address: 172.16.10.80
+ openstack_proxy_address: 172.17.16.80 # external network proxy VIP
+ openstack_proxy_vip_interface: ens5
openstack_proxy_hostname: prx
openstack_proxy_node01_address: 172.16.10.121
openstack_proxy_node01_hostname: prx01
diff --git a/tcp_tests/templates/cookied-mcp-queens-dvr-ssl/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-queens-dvr-ssl/_context-environment.yaml
index b1c7e3d..7f21c48 100644
--- a/tcp_tests/templates/cookied-mcp-queens-dvr-ssl/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-dvr-ssl/_context-environment.yaml
@@ -58,13 +58,17 @@
prx01.mcp-queens-dvr-ssl.local:
reclass_storage_name: openstack_proxy_node01
roles:
- - openstack_proxy
+ #- openstack_proxy # another VIP interface used
- linux_system_codename_xenial
interfaces:
ens3:
role: single_dhcp
ens4:
role: single_ctl
+ ens5:
+ role: single_external
+ external_address: 172.17.16.121
+ external_network_netmask: 255.255.255.0
mon01.mcp-queens-dvr-ssl.local:
reclass_storage_name: stacklight_server_node01
@@ -187,6 +191,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -229,3 +235,10 @@
role: single_dhcp
ens4:
role: single_ctl
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-mcp-queens-dvr-ssl/underlay.yaml b/tcp_tests/templates/cookied-mcp-queens-dvr-ssl/underlay.yaml
index f6a8998..3ec33cf 100644
--- a/tcp_tests/templates/cookied-mcp-queens-dvr-ssl/underlay.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-dvr-ssl/underlay.yaml
@@ -689,9 +689,26 @@
cloudinit_meta_data: *cloudinit_meta_data
cloudinit_user_data: *cloudinit_user_data_1604
- interfaces: *interfaces
- network_config: *network_config
-
+ interfaces:
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+ - label: ens5
+ l2_network_device: external
+ interface_model: *interface_model
+ network_config:
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private
+ ens5:
+ networks:
+ - external
- name: {{ HOSTNAME_CMP01 }}
role: salt_minion
diff --git a/tcp_tests/templates/cookied-mcp-queens-dvr/_context-cookiecutter-mcp-queens-dvr.yaml b/tcp_tests/templates/cookied-mcp-queens-dvr/_context-cookiecutter-mcp-queens-dvr.yaml
index 15f8d68..85f91da 100644
--- a/tcp_tests/templates/cookied-mcp-queens-dvr/_context-cookiecutter-mcp-queens-dvr.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-dvr/_context-cookiecutter-mcp-queens-dvr.yaml
@@ -100,7 +100,8 @@
openstack_nova_compute_nfv_req_enabled: 'False'
openstack_ovs_dvr_enabled: 'True'
openstack_ovs_encapsulation_type: vxlan
- openstack_proxy_address: 172.16.10.80
+ openstack_proxy_address: 172.17.16.80 # external network proxy VIP
+ openstack_proxy_vip_interface: ens5
openstack_proxy_hostname: prx
openstack_proxy_node01_address: 172.16.10.121
openstack_proxy_node01_hostname: prx01
diff --git a/tcp_tests/templates/cookied-mcp-queens-dvr/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-queens-dvr/_context-environment.yaml
index 081c51d..a1bdfd4 100644
--- a/tcp_tests/templates/cookied-mcp-queens-dvr/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-dvr/_context-environment.yaml
@@ -58,13 +58,17 @@
prx01.mcp-queens-dvr.local:
reclass_storage_name: openstack_proxy_node01
roles:
- - openstack_proxy
+ #- openstack_proxy # another VIP interface used
- linux_system_codename_xenial
interfaces:
ens3:
role: single_dhcp
ens4:
role: single_ctl
+ ens5:
+ role: single_external
+ external_address: 172.17.16.121
+ external_network_netmask: 255.255.255.0
mon01.mcp-queens-dvr.local:
reclass_storage_name: stacklight_server_node01
@@ -187,6 +191,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -228,4 +234,11 @@
ens3:
role: single_dhcp
ens4:
- role: single_ctl
\ No newline at end of file
+ role: single_ctl
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
diff --git a/tcp_tests/templates/cookied-mcp-queens-dvr/underlay.yaml b/tcp_tests/templates/cookied-mcp-queens-dvr/underlay.yaml
index f6d9b98..2cb86de 100644
--- a/tcp_tests/templates/cookied-mcp-queens-dvr/underlay.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-dvr/underlay.yaml
@@ -597,9 +597,26 @@
cloudinit_meta_data: *cloudinit_meta_data
cloudinit_user_data: *cloudinit_user_data_1604
- interfaces: *interfaces
- network_config: *network_config
-
+ interfaces:
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+ - label: ens5
+ l2_network_device: external
+ interface_model: *interface_model
+ network_config:
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private
+ ens5:
+ networks:
+ - external
- name: {{ HOSTNAME_CMP01 }}
role: salt_minion
diff --git a/tcp_tests/templates/cookied-mcp-queens-ovs/_context-cookiecutter-mcp-queens-ovs.yaml b/tcp_tests/templates/cookied-mcp-queens-ovs/_context-cookiecutter-mcp-queens-ovs.yaml
index 18a8beb..f43c412 100644
--- a/tcp_tests/templates/cookied-mcp-queens-ovs/_context-cookiecutter-mcp-queens-ovs.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-ovs/_context-cookiecutter-mcp-queens-ovs.yaml
@@ -100,7 +100,8 @@
openstack_nova_compute_nfv_req_enabled: 'False'
openstack_ovs_dvr_enabled: 'False'
openstack_ovs_encapsulation_type: vxlan
- openstack_proxy_address: 172.16.10.80
+ openstack_proxy_address: 172.17.16.80 # external network proxy VIP
+ openstack_proxy_vip_interface: ens5
openstack_proxy_hostname: prx
openstack_proxy_node01_address: 172.16.10.121
openstack_proxy_node01_hostname: prx01
diff --git a/tcp_tests/templates/cookied-mcp-queens-ovs/_context-environment.yaml b/tcp_tests/templates/cookied-mcp-queens-ovs/_context-environment.yaml
index 1593d43..c932519 100644
--- a/tcp_tests/templates/cookied-mcp-queens-ovs/_context-environment.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-ovs/_context-environment.yaml
@@ -58,13 +58,17 @@
prx01.mcp-queens-ovs.local:
reclass_storage_name: openstack_proxy_node01
roles:
- - openstack_proxy
+ #- openstack_proxy # another VIP interface used
- linux_system_codename_xenial
interfaces:
ens3:
role: single_dhcp
ens4:
role: single_ctl
+ ens5:
+ role: single_external
+ external_address: 172.17.16.121
+ external_network_netmask: 255.255.255.0
mon01.mcp-queens-ovs.local:
reclass_storage_name: stacklight_server_node01
@@ -187,6 +191,8 @@
roles:
- openstack_gateway
- linux_system_codename_xenial
+ classes:
+ - system.linux.system.repo.mcp.apt_mirantis.docker
interfaces:
ens3:
role: single_dhcp
@@ -229,3 +235,11 @@
role: single_dhcp
ens4:
role: single_ctl
+
+environment_metadata:
+ public_gateway: 172.17.16.1
+ public_cidr: 172.17.16.0/24
+ public_allocation_start: 172.17.16.201
+ public_allocation_end: 172.17.16.245
+ tempest_test_target: gtw01*
+
diff --git a/tcp_tests/templates/cookied-mcp-queens-ovs/underlay.yaml b/tcp_tests/templates/cookied-mcp-queens-ovs/underlay.yaml
index 6ea4098..349417e 100644
--- a/tcp_tests/templates/cookied-mcp-queens-ovs/underlay.yaml
+++ b/tcp_tests/templates/cookied-mcp-queens-ovs/underlay.yaml
@@ -596,8 +596,26 @@
cloudinit_meta_data: *cloudinit_meta_data
cloudinit_user_data: *cloudinit_user_data_1604
- interfaces: *interfaces
- network_config: *network_config
+ interfaces:
+ - label: ens3
+ l2_network_device: admin
+ interface_model: *interface_model
+ - label: ens4
+ l2_network_device: private
+ interface_model: *interface_model
+ - label: ens5
+ l2_network_device: external
+ interface_model: *interface_model
+ network_config:
+ ens3:
+ networks:
+ - admin
+ ens4:
+ networks:
+ - private
+ ens5:
+ networks:
+ - external
- name: {{ HOSTNAME_CMP01 }}
role: salt_minion
diff --git a/tcp_tests/templates/cookied-model-generator/salt_cookied-mcp-mitaka-dvr-ceph.yaml b/tcp_tests/templates/cookied-model-generator/salt_cookied-mcp-mitaka-dvr-ceph.yaml
new file mode 100644
index 0000000..4cdda3b
--- /dev/null
+++ b/tcp_tests/templates/cookied-model-generator/salt_cookied-mcp-mitaka-dvr-ceph.yaml
@@ -0,0 +1,94 @@
+{% from 'cookied-model-generator/underlay.yaml' import HOSTNAME_CFG01 with context %}
+{% from 'cookied-model-generator/underlay.yaml' import DOMAIN_NAME with context %}
+
+{% set SALT_MODELS_REPOSITORY = os_env('SALT_MODELS_REPOSITORY','https://gerrit.mcp.mirantis.com/salt-models/mcp-virtual-lab') %}
+# Other salt model repository parameters see in shared-salt.yaml
+{% set SALT_VERSION = os_env('SALT_VERSION', '2017.7') %}
+
+{% set LAB_CONFIG_NAME = 'cookied-mcp-mitaka-dvr-ceph' %}
+# Name of the context file (without extension, that is fixed .yaml) used to render the Environment model
+{% set ENVIRONMENT_MODEL_INVENTORY_NAME = os_env('ENVIRONMENT_MODEL_INVENTORY_NAME', LAB_CONFIG_NAME) %}
+# Path to the context files used to render Cluster and Environment models
+{%- set CLUSTER_CONTEXT_NAME = '_context-cookiecutter-mcp-mitaka-dvr-ceph.yaml' %}
+{%- set ENVIRONMENT_CONTEXT_NAMES = ['_context-environment.yaml'] %}
+{% set REPOSITORY_SUITE = os_env('REPOSITORY_SUITE', 'testing') %}
+{% set FORMULA_REPOSITORY = os_env('FORMULA_REPOSITORY', 'deb [arch=amd64] http://apt.mirantis.com/${DISTRIB_CODENAME} ' + REPOSITORY_SUITE + ' salt extra') %}
+{% set FORMULA_GPG = os_env('FORMULA_GPG', 'http://apt.mirantis.com/public.gpg') %}
+{% set SALT_REPOSITORY = os_env('SALT_REPOSITORY', "deb [arch=amd64] http://apt.mirantis.com/${DISTRIB_CODENAME}/salt/" + SALT_VERSION + REPOSITORY_SUITE + " main") %}
+{# set SALT_REPOSITORY = os_env('SALT_REPOSITORY', "deb [arch=amd64] http://apt.mirantis.com/${DISTRIB_CODENAME}/salt/2016.3 " + REPOSITORY_SUITE + " main") #}
+{% set SALT_GPG = os_env('SALT_GPG', 'http://apt.mirantis.com/public.gpg') %}
+{% set UBUNTU_REPOSITORY = os_env('UBUNTU_REPOSITORY', "deb [arch=amd64] http://mirror.mirantis.com/" + REPOSITORY_SUITE + "/ubuntu/ ${DISTRIB_CODENAME} main restricted universe") %}
+{% set UBUNTU_UPDATES_REPOSITORY = os_env('UBUNTU_UPDATES_REPOSITORY', "deb [arch=amd64] http://mirror.mirantis.com/" + REPOSITORY_SUITE + "/ubuntu/ ${DISTRIB_CODENAME}-updates main restricted universe") %}
+{% set UBUNTU_SECURITY_REPOSITORY = os_env('UBUNTU_SECURITY_REPOSITORY', "deb [arch=amd64] http://mirror.mirantis.com/" + REPOSITORY_SUITE + "/ubuntu/ ${DISTRIB_CODENAME}-security main restricted universe") %}
+
+{% import 'shared-salt.yaml' as SHARED with context %}
+
+{{ SHARED.MACRO_INSTALL_PACKAGES_ON_NODES(HOSTNAME_CFG01) }}
+
+{{ SHARED.MACRO_INSTALL_FORMULAS('\*') }}
+
+{{ SHARED.MACRO_GENERATE_COOKIECUTTER_MODEL() }}
+
+{{ SHARED.MACRO_GENERATE_AND_ENABLE_ENVIRONMENT_MODEL() }}
+
+- description: "Workaround for combined roles: remove unnecessary classes"
+ cmd: |
+ set -e;
+ sed -i '/system.reclass.storage.system.physical_control_cluster/d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ sed -i '/system.reclass.storage.system.openstack_database_cluster/d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ sed -i '/system.reclass.storage.system.openstack_message_queue_cluster/d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ sed -i '/system.reclass.storage.system.stacklight_telemetry_cluster/d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ sed -i '/system.reclass.storage.system.stacklight_log_cluster/d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ sed -i '/system.salt.control.placement.openstack.compact/d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/kvm.yml;
+
+
+ # Bind9 services are placed on the first two ctl nodes
+ salt-call reclass.cluster_meta_set name='openstack_dns_node01_address' value='${_param:openstack_control_node01_address}' file_name=/srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/openstack/init.yml
+ salt-call reclass.cluster_meta_set name='openstack_dns_node02_address' value='${_param:openstack_control_node02_address}' file_name=/srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/openstack/init.yml
+
+ . /root/venv-reclass-tools/bin/activate;
+ reclass-tools del-key parameters.reclass.storage.node.infra_kvm_node01 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ reclass-tools del-key parameters.reclass.storage.node.infra_kvm_node02 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ reclass-tools del-key parameters.reclass.storage.node.infra_kvm_node03 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ reclass-tools del-key parameters.reclass.storage.node.openstack_database_node01 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ reclass-tools del-key parameters.reclass.storage.node.openstack_database_node02 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ reclass-tools del-key parameters.reclass.storage.node.openstack_database_node03 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ reclass-tools del-key parameters.reclass.storage.node.openstack_message_queue_node01 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ reclass-tools del-key parameters.reclass.storage.node.openstack_message_queue_node02 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ reclass-tools del-key parameters.reclass.storage.node.openstack_message_queue_node03 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+ reclass-tools del-key parameters.reclass.storage.node.stacklight_log_node01 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config/init.yml;
+
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: "Disable designate worker for Mitaka release"
+ cmd: |
+ set -e;
+ salt-call reclass.cluster_meta_set name='designate_worker_enabled' value='false' file_name=/srv/salt/reclass/classes/environment/{{ SHARED.CLUSTER_NAME }}/features/designate_bind9/init.yml
+ salt-call reclass.cluster_meta_set name='designate_worker_enabled' value='false' file_name=/srv/salt/reclass/classes/environment/{{ SHARED.CLUSTER_NAME }}/features/designate_pool_manager/init.yml
+ salt-call reclass.cluster_meta_set name='designate_worker_enabled' value='false' file_name=/srv/salt/reclass/classes/environment/{{ SHARED.CLUSTER_NAME }}/features/designate/init.yml
+
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Temporary workaround for removing cinder-volume from CTL nodes
+ cmd: |
+ sed -i 's/\-\ system\.cinder\.volume\.single//g' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/openstack/control.yml;
+ sed -i 's/\-\ system\.cinder\.volume\.notification\.messagingv2//g' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/openstack/control.yml;
+
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: true
+
+- description: Temporary workaround !! Fix or debug
+ cmd: |
+ sed -i 's/pg_num: 128/pg_num: 4/g' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/ceph/setup.yml;
+ sed -i 's/pgp_num: 128/pgp_num: 4/g' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/ceph/setup.yml;
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: true
+
+
+{{ SHARED.MACRO_GENERATE_INVENTORY(RERUN_SALTMASTER_STATE=true) }}
diff --git a/tcp_tests/templates/shared-core.yaml b/tcp_tests/templates/shared-core.yaml
index ae47e03..3b1a716 100644
--- a/tcp_tests/templates/shared-core.yaml
+++ b/tcp_tests/templates/shared-core.yaml
@@ -192,7 +192,7 @@
cmd: salt --hard-crash --state-output=mixed --state-verbose=False
-C 'I@nginx:server' state.sls salt.minion.cert
node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 15}
+ retry: {count: 3, delay: 15}
skip_fail: false
- description: Install nginx server
diff --git a/tcp_tests/templates/shared-salt.yaml b/tcp_tests/templates/shared-salt.yaml
index 2a4e8cd..d48fb6a 100644
--- a/tcp_tests/templates/shared-salt.yaml
+++ b/tcp_tests/templates/shared-salt.yaml
@@ -5,16 +5,17 @@
{# Reference to a patch that should be applied to the model if required, for example: export SALT_MODELS_REF_CHANGE=refs/changes/19/7219/12 #}
{% set SALT_MODELS_REF_CHANGE = os_env('SALT_MODELS_REF_CHANGE', '') %}
{# Pin to a specified commit in salt-models/reclass-system #}
+{% set SALT_MODELS_SYSTEM_REPOSITORY = os_env('SALT_MODELS_SYSTEM_REPOSITORY','https://gerrit.mcp.mirantis.com/salt-models/reclass-system') %}
+{% set SALT_MODELS_SYSTEM_COMMIT = os_env('SALT_MODELS_SYSTEM_COMMIT','') %}
+{% set SALT_MODELS_SYSTEM_REF_CHANGE = os_env('SALT_MODELS_SYSTEM_REF_CHANGE','') %}
+{% set SALT_MODELS_SYSTEM_TAG = os_env('SALT_MODELS_SYSTEM_TAG','') %}
{% set COOKIECUTTER_TEMPLATES_REPOSITORY_USER = os_env('COOKIECUTTER_TEMPLATES_REPOSITORY_USER','mcp-gerrit') %}
{% set COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH = os_env('COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH','') %}
{% set COOKIECUTTER_TEMPLATES_REPOSITORY = os_env('COOKIECUTTER_TEMPLATES_REPOSITORY','ssh://' + COOKIECUTTER_TEMPLATES_REPOSITORY_USER +'@gerrit.mcp.mirantis.com:29418/mk/cookiecutter-templates') %}
{% set COOKIECUTTER_REF_CHANGE = os_env('COOKIECUTTER_REF_CHANGE','') %}
{% set COOKIECUTTER_TAG = os_env('COOKIECUTTER_TAG','') %}
{% set COOKIECUTTER_TEMPLATE_COMMIT = os_env('COOKIECUTTER_TEMPLATE_COMMIT','') %}
-{% set SALT_MODELS_SYSTEM_REPOSITORY = os_env('SALT_MODELS_SYSTEM_REPOSITORY','ssh://' + COOKIECUTTER_TEMPLATES_REPOSITORY_USER +'@gerrit.mcp.mirantis.com:29418/salt-models/reclass-system') %}
-{% set SALT_MODELS_SYSTEM_COMMIT = os_env('SALT_MODELS_SYSTEM_COMMIT','') %}
-{% set SALT_MODELS_SYSTEM_REF_CHANGE = os_env('SALT_MODELS_SYSTEM_REF_CHANGE','') %}
-{% set SALT_MODELS_SYSTEM_TAG = os_env('SALT_MODELS_SYSTEM_TAG','') %}
+{% set ENVIRONMENT_TEMPLATE_COMMIT = os_env('ENVIRONMENT_TEMPLATE_COMMIT','') %}
{% set ENVIRONMENT_TEMPLATE_REF_CHANGE = os_env('ENVIRONMENT_TEMPLATE_REF_CHANGE','') %}
# Currently we support 2 salt version that can be set over bellow var
{% set SALT_VERSION = os_env('SALT_VERSION','2017.7') %}
@@ -232,12 +233,6 @@
export GIT_SSL_NO_VERIFY=true; git clone -b {{ SALT_MODELS_BRANCH }} {{ SALT_MODELS_REPOSITORY }} /srv/salt/reclass.tmp;
rsync -a /srv/salt/reclass.tmp/ /srv/salt/reclass;
- {%- if COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH != '' %}
- chmod 0600 /tmp/{{ COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH | basename }}
- eval $(ssh-agent)
- ssh-add /tmp/{{ COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH | basename }}
- {%- endif %}
-
pushd /srv/salt/reclass;
git config submodule."classes/system".url "{{ SALT_MODELS_SYSTEM_REPOSITORY }}";
git submodule update --init --recursive;
@@ -373,14 +368,12 @@
retry: {count: 1, delay: 1}
skip_fail: false
-{%- if COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH != '' %}
- description: "Upload {{ COOKIECUTTER_TEMPLATES_REPOSITORY_USER }} key"
upload:
local_path: {{ COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH | dirname }}/
local_filename: {{ COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH | basename }}
remote_path: /tmp/
node_name: {{ HOSTNAME_CFG01 }}
-{%- endif %}
- description: Create cluster model from cookiecutter templates
cmd: |
@@ -389,12 +382,9 @@
sudo apt-get install python-setuptools -y
pip install cookiecutter
- {%- if COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH != '' %}
chmod 0600 /tmp/{{ COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH | basename }}
eval $(ssh-agent)
ssh-add /tmp/{{ COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH | basename }}
- {%- endif %}
-
export GIT_SSL_NO_VERIFY=true; git clone {{ COOKIECUTTER_TEMPLATES_REPOSITORY }} /root/cookiecutter-templates
{%- if COOKIECUTTER_REF_CHANGE != '' %}
@@ -471,13 +461,6 @@
cmd: |
set -e;
set -x;
-
- {%- if COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH != '' %}
- chmod 0600 /tmp/{{ COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH | basename }}
- eval $(ssh-agent)
- ssh-add /tmp/{{ COOKIECUTTER_TEMPLATES_REPOSITORY_KEY_PATH | basename }}
- {%- endif %}
-
{%- if SALT_MODELS_SYSTEM_REF_CHANGE != '' %}
pushd /srv/salt/reclass/classes/system/ && \
{%- for item in SALT_MODELS_SYSTEM_REF_CHANGE.split(" ") %}
@@ -525,21 +508,20 @@
set -e;
mkdir -p /root/environment/;
export GIT_SSL_NO_VERIFY=true; git clone https://github.com/Mirantis/environment-template /root/environment/environment_template
- node_name: {{ HOSTNAME_CFG01 }}
- skip_fail: false
-{%- if ENVIRONMENT_TEMPLATE_REF_CHANGE != '' %}
-- description: Fetch changes for environment templates
- cmd: |
- set -e;
- set -x;
+ {%- if ENVIRONMENT_TEMPLATE_REF_CHANGE != '' %}
pushd /root/environment/environment_template &&
git fetch https://github.com/Mirantis/environment-template {{ ENVIRONMENT_TEMPLATE_REF_CHANGE }} &&
git checkout FETCH_HEAD &&
popd
+ {%- elif ENVIRONMENT_TEMPLATE_COMMIT != '' %}
+ pushd /root/environment/environment_template
+ git checkout {{ ENVIRONMENT_TEMPLATE_COMMIT }}
+ popd
+ {%- endif %}
+
node_name: {{ HOSTNAME_CFG01 }}
skip_fail: false
-{%- endif %}
{%- for ENVIRONMENT_CONTEXT_NAME in ENVIRONMENT_CONTEXT_NAMES %}
- description: "[EXPERIMENTAL] Upload environment inventory to cfg01.{{ DOMAIN_NAME }}"
@@ -550,6 +532,29 @@
node_name: {{ HOSTNAME_CFG01 }}
{%- endfor %}
+- description: "Replace template addresses to actual environment addresses"
+ cmd: |
+ set -ex;
+ # Replace firstly to an intermediate value to avoid intersection between
+ # already replaced and replacing networks.
+ # For example, if generated IPV4_NET_ADMIN_PREFIX=10.16.0 , then there is a risk of replacing twice:
+ # 192.168.10 -> 10.16.0 (generated network for admin)
+ # 10.16.0 -> <external network>
+ # So let's replace constant networks to the keywords, and then keywords to the desired networks.
+ export REPLACE_DIRS="/root/environment/"
+ find ${REPLACE_DIRS} -type f -exec sed -i 's/10\.167\.5/==IPV4_NET_ADMIN_PREFIX==/g' {} +
+ find ${REPLACE_DIRS} -type f -exec sed -i 's/10\.167\.4/==IPV4_NET_CONTROL_PREFIX==/g' {} +
+ find ${REPLACE_DIRS} -type f -exec sed -i 's/10\.167\.6/==IPV4_NET_TENANT_PREFIX==/g' {} +
+ find ${REPLACE_DIRS} -type f -exec sed -i 's/172\.17\.16/==IPV4_NET_EXTERNAL_PREFIX==/g' {} +
+
+ find ${REPLACE_DIRS} -type f -exec sed -i 's/==IPV4_NET_ADMIN_PREFIX==/{{ IPV4_NET_ADMIN_PREFIX }}/g' {} +
+ find ${REPLACE_DIRS} -type f -exec sed -i 's/==IPV4_NET_CONTROL_PREFIX==/{{ IPV4_NET_CONTROL_PREFIX }}/g' {} +
+ find ${REPLACE_DIRS} -type f -exec sed -i 's/==IPV4_NET_TENANT_PREFIX==/{{ IPV4_NET_TENANT_PREFIX }}/g' {} +
+ find ${REPLACE_DIRS} -type f -exec sed -i 's/==IPV4_NET_EXTERNAL_PREFIX==/{{ IPV4_NET_EXTERNAL_PREFIX }}/g' {} +
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
- description: "[EXPERIMENTAL] Remove linux.network.interface object from the cluster/system models and use fixed 'environment' model instead"
cmd: |
set -e;
diff --git a/tcp_tests/templates/shared-sl-tests.yaml b/tcp_tests/templates/shared-sl-tests.yaml
index a2103a4..0cd49b3 100644
--- a/tcp_tests/templates/shared-sl-tests.yaml
+++ b/tcp_tests/templates/shared-sl-tests.yaml
@@ -2,7 +2,7 @@
{% set SL_TEST_BRANCH = os_env('SL_TEST_BRANCH','master') %}
{% set SL_TEST_REPO = os_env('SL_TEST_REPO','https://github.com/Mirantis/stacklight-pytest') %}
-{% set SL_TEST_TO_RUN = os_env('set SL_TEST_TO_RUN','stacklight_tests/tests/prometheus/test_smoke.py') %}
+{% set SL_TEST_TO_RUN = os_env('set SL_TEST_TO_RUN','stacklight_tests/tests/test_smoke.py') %}
{%- macro MACRO_CLONE_SL_TESTS() %}
{############################################################}
diff --git a/tcp_tests/templates/virtual-mcp-trusty/Readme.txt b/tcp_tests/templates/virtual-mcp-trusty/Readme.txt
index fc9f978..da47d0b 100644
--- a/tcp_tests/templates/virtual-mcp-trusty/Readme.txt
+++ b/tcp_tests/templates/virtual-mcp-trusty/Readme.txt
@@ -2,4 +2,14 @@
- virtual-mcp-mitaka-dvr-trusty
- virtual-mcp-mitaka-ovs-trusty
-Used by maintenance team.
\ No newline at end of file
+Used by maintenance team.
+
+Use following env vars should be used:
+SALT_MODELS_COMMIT = 'fa85f84'
+SALT_MODELS_SYSTEM_TAG = '2018.8.0'
+REPOSITORY_SUITE = '2018.8.0'
+OVERRIDES = 'openstack_log_appender: true
+linux_system_repo_mk_openstack_version: testing
+'
+
+Also VCP 2018.8.0 images should be used
\ No newline at end of file
diff --git a/tcp_tests/templates/virtual-mcp-trusty/core.yaml b/tcp_tests/templates/virtual-mcp-trusty/core.yaml
index 42f7e52..a433aee 100644
--- a/tcp_tests/templates/virtual-mcp-trusty/core.yaml
+++ b/tcp_tests/templates/virtual-mcp-trusty/core.yaml
@@ -1,12 +1,129 @@
{% from 'virtual-mcp-trusty/underlay.yaml' import HOSTNAME_CFG01 with context %}
-{% import 'shared-core.yaml' as SHARED_CORE with context %}
+# vkhlyunev: shared steps are constantly updating due master development so
+# we cant use them for old release (e.g. new steps for gluster are using
+# glusterfs:server:role:primary pillar for targeting which does not exists in
+# 2018.8.0 release model (and we can't update the model)
-{{ SHARED_CORE.MACRO_INSTALL_KEEPALIVED() }}
-{{ SHARED_CORE.MACRO_INSTALL_GLUSTERFS() }}
-{{ SHARED_CORE.MACRO_INSTALL_RABBITMQ() }}
-{{ SHARED_CORE.MACRO_INSTALL_GALERA() }}
-{{ SHARED_CORE.MACRO_INSTALL_HAPROXY() }}
-{{ SHARED_CORE.MACRO_INSTALL_NGINX() }}
-{{ SHARED_CORE.MACRO_INSTALL_MEMCACHED() }}
-{{ SHARED_CORE.MACRO_CHECK_VIP() }}
+# Install support services
+- description: Install keepalived on ctl01
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@keepalived:cluster and *01*' state.sls keepalived
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: true
+
+- description: Install keepalived
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@keepalived:cluster' state.sls keepalived
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 10}
+ skip_fail: true
+
+- description: Install glusterfs
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@glusterfs:server' state.sls glusterfs.server.service && sleep 20
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Setup glusterfs on primary controller
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@glusterfs:server and *01*' state.sls glusterfs.server.setup -b 1
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 5, delay: 5}
+ skip_fail: false
+
+- description: Setup glusterfs on other nodes
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@glusterfs:server' state.sls glusterfs -b 1
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 5, delay: 5}
+ skip_fail: false
+
+- description: Check the gluster status
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@glusterfs:server' cmd.run 'gluster peer status && gluster volume status' -b 1
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Install RabbitMQ on ctl01
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@rabbitmq:server and *01*' state.sls rabbitmq
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Install RabbitMQ
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@rabbitmq:server' state.sls rabbitmq
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Check the rabbitmq status
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@rabbitmq:server' cmd.run 'rabbitmqctl cluster_status'
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Install Galera on first server
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@galera:master' state.sls galera
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Install Galera on other servers
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@galera:slave' state.sls galera -b 1
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Check mysql status
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@galera:*' mysql.status | grep -A1 -e "wsrep_incoming_addresses\|wsrep_cluster_size"
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: true
+
+
+- description: Install haproxy
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@haproxy:proxy' state.sls haproxy
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Check haproxy status
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@haproxy:proxy' service.status haproxy
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Restart rsyslog
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@haproxy:proxy' service.restart rsyslog
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Install memcached on all controllers
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@memcached:server' state.sls memcached
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Check the VIP
+ cmd: |
+ OPENSTACK_CONTROL_ADDRESS=`salt-call --out=newline_values_only pillar.get _param:openstack_control_address`;
+ echo "_param:openstack_control_address (vip): ${OPENSTACK_CONTROL_ADDRESS}";
+ salt --hard-crash --state-output=mixed --state-verbose=False -C 'I@keepalived:cluster' cmd.run "ip a | grep ${OPENSTACK_CONTROL_ADDRESS}" | grep -B1 ${OPENSTACK_CONTROL_ADDRESS}
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 3, delay: 10}
+ skip_fail: false
diff --git a/tcp_tests/templates/virtual-mcp-trusty/openstack.yaml b/tcp_tests/templates/virtual-mcp-trusty/openstack.yaml
index c001d39..fff0966 100644
--- a/tcp_tests/templates/virtual-mcp-trusty/openstack.yaml
+++ b/tcp_tests/templates/virtual-mcp-trusty/openstack.yaml
@@ -6,6 +6,10 @@
{% from 'shared-salt.yaml' import IPV4_NET_EXTERNAL_PREFIX with context %}
{% from 'shared-salt.yaml' import IPV4_NET_TENANT_PREFIX with context %}
+# vkhlyunev: shared steps are constantly updating due master development so
+# we cant use them for old release. For openstack.yaml we can use some shared
+# steps for now but TODO: bind deployment workflow to 2018.8.0 state
+
# Install OpenStack control services
- description: Sync time
cmd: salt --hard-crash --state-output=mixed --state-verbose=False -G 'oscodename:trusty' cmd.run "service ntp stop && ntpdate pool.ntp.org && service ntp start"
@@ -23,11 +27,94 @@
retry: {count: 1, delay: 5}
skip_fail: true
-{{ SHARED_OPENSTACK.MACRO_INSTALL_KEYSTONE() }}
+- description: Install keystone service on primary node
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@keystone:server and *01*' state.sls keystone.server
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 2, delay: 15}
+ skip_fail: false
+
+- description: Install keystone service on other nodes
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@keystone:server' state.sls keystone.server
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 2, delay: 15}
+ skip_fail: false
+
+- description: Restart apache due to PROD-10477
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*'
+ cmd.run "service apache2 restart"
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 15}
+ skip_fail: false
+
+- description: Check apache status to PROD-10477
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*'
+ cmd.run "service apache2 status"
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 15}
+ skip_fail: false
+
+- description: Mount glusterfs.client volumes (resuires created 'keystone' system user)
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@keystone:server' state.sls glusterfs.client -b 1
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Update fernet keys for keystone server on the mounted glusterfs volume
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@keystone:server' state.sls keystone.server -b 1
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Populate keystone services/tenants/admins
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C 'I@keystone:client' state.sls keystone.client
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 2, delay: 5}
+ skip_fail: false
+
+- description: Check keystone service-list
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C "I@keystone:server" cmd.run ". /root/keystonercv3;
+ openstack service list"
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
{{ SHARED_OPENSTACK.MACRO_INSTALL_GLANCE() }}
-{{ SHARED_OPENSTACK.MACRO_INSTALL_NOVA() }}
+- description: Install nova service on primary node
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C "I@nova:controller and *01*" state.sls nova.controller
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Install nova service on other nodes
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C "I@nova:controller" state.sls nova.controller
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Check nova service-list
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C "I@keystone:server" cmd.run ". /root/keystonercv3;
+ openstack compute service list"
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
+
+- description: Check nova list
+ cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+ -C "I@keystone:server" cmd.run ". /root/keystonercv3;
+ openstack server list"
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 5}
+ skip_fail: false
{{ SHARED_OPENSTACK.MACRO_INSTALL_CINDER() }}
diff --git a/tcp_tests/templates/virtual-mcp-trusty/salt.yaml b/tcp_tests/templates/virtual-mcp-trusty/salt.yaml
index ab04cfb..d8f7fb7 100644
--- a/tcp_tests/templates/virtual-mcp-trusty/salt.yaml
+++ b/tcp_tests/templates/virtual-mcp-trusty/salt.yaml
@@ -10,6 +10,15 @@
{% import 'shared-salt.yaml' as SHARED with context %}
+# vkhlyunev: sometimes we have to verify fixes to mitaka openstack based on
+# ubuntu trusty OS deployment. Last discovered deploy-able configuration is based on
+# mcp-virtual-lab/salt-formulas/reclass-system parameters/commits/tags listed below
+# SALT_MODELS_COMMIT = 'fa85f84'
+# SALT_MODELS_SYSTEM_TAG = '2018.8.0'
+# REPOSITORY_SUITE = '2018.8.0'
+# OVERRIDES = 'openstack_log_appender: true
+# linux_system_repo_mk_openstack_version: testing'
+
{{ SHARED.MACRO_INSTALL_SALT_MASTER() }}
{{ SHARED.MACRO_CLONE_RECLASS_MODELS() }}
@@ -30,13 +39,27 @@
retry: {count: 1, delay: 1}
skip_fail: false
{%- endfor %}
+{%- endif %}
+
+# vkhlyunev: fa85f84 model commit contains sphinx on cfg01 node
+# which is not required for mitaka-trusty testing. Unfortunately we can not fix
+# it in model itself due to constantly updating models according to development
+# of main release.
+- description: Apply sphinx workaround - delete system.sphinx class
+ cmd: sed -i -e '/system.sphinx/d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config.yml
+ node_name: {{ HOSTNAME_CFG01 }}
+ skip_fail: False
+
+- description: Apply sphinx workaround - delete nginx section
+ cmd: sed -i -e '/ nginx:/,+8d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config.yml
+ node_name: {{ HOSTNAME_CFG01 }}
+ skip_fail: False
- description: Refresh pillar
cmd: salt '*' saltutil.refresh_pillar
node_name: {{ HOSTNAME_CFG01 }}
retry: {count: 1, delay: 1}
skip_fail: false
-{%- endif %}
{{ SHARED.MACRO_GENERATE_INVENTORY() }}
diff --git a/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/openstack.yaml b/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/openstack.yaml
index 68a1220..eb03f23 100644
--- a/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/openstack.yaml
+++ b/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/openstack.yaml
@@ -12,8 +12,6 @@
{% import 'shared-salt.yaml' as SHARED with context %}
{% import 'shared-openstack.yaml' as SHARED_OPENSTACK with context %}
-{% set DOCKER_LOCAL_REPO = os_env('DOCKER_LOCAL_REPO', 'deb [arch=amd64] http://mirror.mcp.mirantis.local.test/' + REPOSITORY_SUITE + '/docker/xenial xenial stable') %}
-
{{ SHARED_OPENSTACK.MACRO_INSTALL_KEYSTONE() }}
{{ SHARED_OPENSTACK.MACRO_INSTALL_GLANCE() }}
@@ -125,63 +123,6 @@
retry: {count: 10, delay: 30}
skip_fail: false
- # Upload cirros image
-- description: Upload cirros image on ctl01
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- 'wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-i386-disk.img'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 2, delay: 30}
- skip_fail: false
-
-- description: Create net04_external
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron net-create net04_ext --router:external True --provider:physical_network physnet1 --provider:network_type flat'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Create subnet_external
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron subnet-create net04_ext {{ IPV4_NET_EXTERNAL_PREFIX }}.0/24 --name net04_ext__subnet --disable-dhcp --allocation-pool start={{ IPV4_NET_EXTERNAL_PREFIX }}.150,end={{ IPV4_NET_EXTERNAL_PREFIX }}.180 --gateway {{ IPV4_NET_EXTERNAL_PREFIX }}.1'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Create net04
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron net-create net04'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Create subnet_net04
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron subnet-create net04 {{ IPV4_NET_TENANT_PREFIX }}.0/24 --name net04__subnet --allocation-pool start={{ IPV4_NET_TENANT_PREFIX }}.120,end={{ IPV4_NET_TENANT_PREFIX }}.240'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Create router
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron router-create net04_router01'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Set geteway
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron router-gateway-set net04_router01 net04_ext'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Add interface
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron router-interface-add net04_router01 net04__subnet'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
- description: sync time
cmd: salt --hard-crash --state-output=mixed --state-verbose=False '*' cmd.run
'service ntp stop; ntpd -gq; service ntp start'
@@ -189,41 +130,6 @@
retry: {count: 1, delay: 30}
skip_fail: false
-- description: Enable local docker repo
- cmd: |
- set -e;
- echo "{{ DOCKER_LOCAL_REPO }}" > /etc/apt/sources.list.d/mcp_docker.list;
- apt-get clean; apt-get update;
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Install docker-ce on gtw
- cmd: salt-call cmd.run 'apt-get install docker-ce -y'
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Enable forward policy on gtw
- cmd: |
- set -e;
- iptables --policy FORWARD ACCEPT;
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: create rc file on cfg
- cmd: scp ctl01:/root/keystonercv3 /root
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Copy rc file
- cmd: scp /root/keystonercv3 gtw01:/root
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
{{ BACKUP.MACRO_WR_NGINX_MASTER() }}
{{ BACKUP.MACRO_BACKUP_BACKUPNINJA() }}
{{ BACKUP.MACRO_BACKUP_XTRABACKUP() }}
diff --git a/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/post_openstack.yaml b/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/post_openstack.yaml
index fc45c30..2a93e5f 100644
--- a/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/post_openstack.yaml
+++ b/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/post_openstack.yaml
@@ -33,62 +33,62 @@
retry: {count: 1, delay: 5}
skip_fail: false
-- description: Upload cirros image on ctl01
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- 'wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-i386-disk.img'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 2, delay: 30}
- skip_fail: false
-
-- description: Create net04_external
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron net-create net04_ext --router:external True --provider:physical_network physnet1 --provider:network_type flat'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Create subnet_external
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron subnet-create net04_ext {{ IPV4_NET_EXTERNAL_PREFIX }}.0/24 --name net04_ext__subnet --disable-dhcp --allocation-pool start={{ IPV4_NET_EXTERNAL_PREFIX }}.150,end={{ IPV4_NET_EXTERNAL_PREFIX }}.180 --gateway {{ IPV4_NET_EXTERNAL_PREFIX }}.1'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Create net04
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron net-create net04'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Create subnet_net04
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron subnet-create net04 {{ IPV4_NET_TENANT_PREFIX }}.0/24 --name net04__subnet --allocation-pool start={{ IPV4_NET_TENANT_PREFIX }}.120,end={{ IPV4_NET_TENANT_PREFIX }}.240'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Create router
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron router-create net04_router01'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Set geteway
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron router-gateway-set net04_router01 net04_ext'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Add interface
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron router-interface-add net04_router01 net04__subnet'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
+#- description: Upload cirros image on ctl01
+# cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+# 'wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-i386-disk.img'
+# node_name: {{ HOSTNAME_CFG01 }}
+# retry: {count: 2, delay: 30}
+# skip_fail: false
+#
+#- description: Create net04_external
+# cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+# '. /root/keystonercv3; neutron net-create net04_ext --router:external True --provider:physical_network physnet1 --provider:network_type flat'
+# node_name: {{ HOSTNAME_CFG01 }}
+# retry: {count: 1, delay: 30}
+# skip_fail: false
+#
+#- description: Create subnet_external
+# cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+# '. /root/keystonercv3; neutron subnet-create net04_ext {{ IPV4_NET_EXTERNAL_PREFIX }}.0/24 --name net04_ext__subnet --disable-dhcp --allocation-pool start={{ IPV4_NET_EXTERNAL_PREFIX }}.150,end={{ IPV4_NET_EXTERNAL_PREFIX }}.180 --gateway {{ IPV4_NET_EXTERNAL_PREFIX }}.1'
+# node_name: {{ HOSTNAME_CFG01 }}
+# retry: {count: 1, delay: 30}
+# skip_fail: false
+#
+#- description: Create net04
+# cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+# '. /root/keystonercv3; neutron net-create net04'
+# node_name: {{ HOSTNAME_CFG01 }}
+# retry: {count: 1, delay: 30}
+# skip_fail: false
+#
+#- description: Create subnet_net04
+# cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+# '. /root/keystonercv3; neutron subnet-create net04 {{ IPV4_NET_TENANT_PREFIX }}.0/24 --name net04__subnet --allocation-pool start={{ IPV4_NET_TENANT_PREFIX }}.120,end={{ IPV4_NET_TENANT_PREFIX }}.240'
+# node_name: {{ HOSTNAME_CFG01 }}
+# retry: {count: 1, delay: 30}
+# skip_fail: false
+#
+#- description: Create router
+# cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+# '. /root/keystonercv3; neutron router-create net04_router01'
+# node_name: {{ HOSTNAME_CFG01 }}
+# retry: {count: 1, delay: 30}
+# skip_fail: false
+#
+#- description: Set geteway
+# cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+# '. /root/keystonercv3; neutron router-gateway-set net04_router01 net04_ext'
+# node_name: {{ HOSTNAME_CFG01 }}
+# retry: {count: 1, delay: 30}
+# skip_fail: false
+#
+#- description: Add interface
+# cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
+# '. /root/keystonercv3; neutron router-interface-add net04_router01 net04__subnet'
+# node_name: {{ HOSTNAME_CFG01 }}
+# retry: {count: 1, delay: 30}
+# skip_fail: false
+#
- description: sync time
cmd: salt --hard-crash --state-output=mixed --state-verbose=False '*' cmd.run
'service ntp stop; ntpd -gq; service ntp start'
@@ -96,41 +96,6 @@
retry: {count: 1, delay: 30}
skip_fail: false
-- description: Enable local docker repo
- cmd: |
- set -e;
- echo "{{ DOCKER_LOCAL_REPO }}" > /etc/apt/sources.list.d/mcp_docker.list;
- apt-get clean; apt-get update;
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Install docker-ce on gtw
- cmd: salt-call cmd.run 'apt-get install docker-ce -y --allow-unauthenticated'
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Enable forward policy on gtw
- cmd: |
- set -e;
- iptables --policy FORWARD ACCEPT;
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: create rc file on cfg
- cmd: scp -o StrictHostKeyChecking=no ctl01:/root/keystonercv3 /root
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Copy rc file
- cmd: scp -o StrictHostKeyChecking=no /root/keystonercv3 gtw01:/root
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
{{ BACKUP.MACRO_WR_NGINX_MASTER() }}
{{ BACKUP.MACRO_BACKUP_BACKUPNINJA() }}
{{ BACKUP.MACRO_BACKUP_XTRABACKUP() }}
\ No newline at end of file
diff --git a/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/salt.yaml b/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/salt.yaml
index 828a14f..21dc19d 100644
--- a/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/salt.yaml
+++ b/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/salt.yaml
@@ -73,7 +73,7 @@
retry: {count: 1, delay: 10}
skip_fail: false
-{{ SHARED.MACRO_CONFIGURE_RECLASS(FORMULA_SERVICES='"linux" "reclass" "salt" "openssh" "ntp" "git" "nginx" "collectd" "sensu" "heka" "sphinx" "keystone" "mysql" "grafana" "haproxy" "rsyslog" "horizon" "prometheus" "telegraf" "elasticsearch" "powerdns" "fluentd" "backupninja" "watchdog" "runtest" "auditd" "logrotate" "gnocchi" "manila" "jenkins" "glusterfs"') }}
+{{ SHARED.MACRO_CONFIGURE_RECLASS(FORMULA_SERVICES='"linux" "reclass" "salt" "openssh" "ntp" "git" "nginx" "collectd" "sensu" "heka" "sphinx" "keystone" "mysql" "grafana" "haproxy" "rsyslog" "horizon" "prometheus" "telegraf" "elasticsearch" "powerdns" "fluentd" "backupninja" "watchdog" "runtest" "auditd" "logrotate" "gnocchi" "manila" "jenkins" "glusterfs" "neutron"') }}
{{ SHARED.MACRO_INSTALL_SALT_MINIONS() }}
@@ -124,12 +124,12 @@
retry: {count: 1, delay: 1}
skip_fail: true
-- description: Workaround to avoid reboot cmp nodes bring OVS interfaces UP
- cmd: |
- salt 'cmp*' cmd.run "ifup br-mesh";
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 10}
- skip_fail: false
+#- description: Workaround to avoid reboot cmp nodes bring OVS interfaces UP
+# cmd: |
+# salt 'cmp*' cmd.run "ifup br-mesh";
+# node_name: {{ HOSTNAME_CFG01 }}
+# retry: {count: 1, delay: 10}
+# skip_fail: false
- description: Temporary WR
cmd: |
diff --git a/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/underlay.yaml b/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/underlay.yaml
index 15da576..b9da22a 100644
--- a/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/underlay.yaml
+++ b/tcp_tests/templates/virtual-offline-pike-ovs-dpdk/underlay.yaml
@@ -121,6 +121,7 @@
net: {{ os_env('EXTERNAL_ADDRESS_POOL01', '10.90.0.0/16:24') }}
params:
ip_reserved:
+ gateway: +1
l2_network_device: +1
default_{{ HOSTNAME_APT01 }}: +122
default_{{ HOSTNAME_CFG01 }}: +100
diff --git a/tcp_tests/templates/virtual-offline-pike-ovs/openstack.yaml b/tcp_tests/templates/virtual-offline-pike-ovs/openstack.yaml
index d362573..ed312b8 100644
--- a/tcp_tests/templates/virtual-offline-pike-ovs/openstack.yaml
+++ b/tcp_tests/templates/virtual-offline-pike-ovs/openstack.yaml
@@ -218,29 +218,6 @@
retry: {count: 1, delay: 30}
skip_fail: false
-- description: Enable local docker repo
- cmd: |
- set -e;
- echo "{{ DOCKER_LOCAL_REPO }}" > /etc/apt/sources.list.d/mcp_docker.list;
- apt-get clean; apt-get update;
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Install docker-ce on gtw
- cmd: salt-call cmd.run 'apt-get install docker-ce -y'
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Enable forward policy on gtw
- cmd: |
- set -e;
- iptables --policy FORWARD ACCEPT;
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
- description: create rc file on cfg
cmd: scp ctl01:/root/keystonercv3 /root
node_name: {{ HOSTNAME_CFG01 }}
diff --git a/tcp_tests/templates/virtual-offline-pike-ovs/salt.yaml b/tcp_tests/templates/virtual-offline-pike-ovs/salt.yaml
index 88f937f..129ca71 100644
--- a/tcp_tests/templates/virtual-offline-pike-ovs/salt.yaml
+++ b/tcp_tests/templates/virtual-offline-pike-ovs/salt.yaml
@@ -59,6 +59,18 @@
retry: {count: 1, delay: 10}
skip_fail: false
+- description: '*Workaround* to remove apt key until migrate on CC'
+ cmd: salt-key -d apt01.virtual-offline-pike-ovs-dpdk -y
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 1}
+ skip_fail: true
+
+- description: '*Workaround* stop minion on apt like proxy node'
+ cmd: systemctl stop salt-minion.service
+ node_name: {{ HOSTNAME_APT01 }}
+ retry: {count: 1, delay: 1}
+ skip_fail: true
+
{{ SHARED.MACRO_CONFIGURE_RECLASS(FORMULA_SERVICES='"linux" "reclass" "salt" "openssh" "ntp" "git" "nginx" "collectd" "sensu" "heka" "sphinx" "keystone" "mysql" "grafana" "haproxy" "rsyslog" "horizon" "prometheus" "telegraf" "elasticsearch" "powerdns" "fluentd" "backupninja" "watchdog" "runtest" "auditd" "logrotate"') }}
{{ SHARED.MACRO_INSTALL_SALT_MINIONS() }}
diff --git a/tcp_tests/templates/virtual-offline-pike-ovs/underlay.yaml b/tcp_tests/templates/virtual-offline-pike-ovs/underlay.yaml
index 569a96c..011bb72 100644
--- a/tcp_tests/templates/virtual-offline-pike-ovs/underlay.yaml
+++ b/tcp_tests/templates/virtual-offline-pike-ovs/underlay.yaml
@@ -87,7 +87,7 @@
net: {{ os_env('EXTERNAL_ADDRESS_POOL01', '10.90.0.0/16:24') }}
params:
ip_reserved:
- l2_network_device: +1
+ l2_network_device: +122
default_{{ HOSTNAME_APT01 }}: +122
default_{{ HOSTNAME_CFG01 }}: +100
default_{{ HOSTNAME_CTL01 }}: +101
diff --git a/tcp_tests/templates/virtual-offline-ssl/openstack.yaml b/tcp_tests/templates/virtual-offline-ssl/openstack.yaml
index e84ed31..02ef0a3 100644
--- a/tcp_tests/templates/virtual-offline-ssl/openstack.yaml
+++ b/tcp_tests/templates/virtual-offline-ssl/openstack.yaml
@@ -240,181 +240,9 @@
retry: {count: 10, delay: 30}
skip_fail: false
-# Configure cinder-volume salt-call
-#- description: Set disks 01
-# cmd: salt-call cmd.run 'echo -e "nn\np\n\n\n\nw" | fdisk /dev/vdb'
-# node_name: {{ HOSTNAME_CTL01 }}
-# retry: {count: 1, delay: 30}
-# skip_fail: false
-#
-#- description: Set disks 02
-# cmd: salt-call cmd.run 'echo -e "nn\np\n\n\n\nw" | fdisk /dev/vdb'
-# node_name: {{ HOSTNAME_CTL02 }}
-# retry: {count: 1, delay: 30}
-# skip_fail: false
-#
-#- description: Set disks 03
-# cmd: salt-call cmd.run 'echo -e "nn\np\n\n\n\nw" | fdisk /dev/vdb'
-# node_name: {{ HOSTNAME_CTL03 }}
-# retry: {count: 1, delay: 30}
-# skip_fail: false
-#
-#- description: Create partitions 01
-# cmd: salt-call cmd.run 'pvcreate /dev/vdb1'
-# node_name: {{ HOSTNAME_CTL01 }}
-# retry: {count: 1, delay: 30}
-# skip_fail: false
-#
-#- description: Create partitions 02
-# cmd: salt-call cmd.run 'pvcreate /dev/vdb1'
-# node_name: {{ HOSTNAME_CTL02 }}
-# retry: {count: 1, delay: 30}
-# skip_fail: false
-#
-#- description: Create partitions 03
-# cmd: salt-call cmd.run 'pvcreate /dev/vdb1'
-# node_name: {{ HOSTNAME_CTL03 }}
-# retry: {count: 1, delay: 30}
-# skip_fail: false
-#
-#- description: create volume_group
-# cmd: salt "ctl*" cmd.run 'vgcreate cinder-volumes /dev/vdb1'
-# node_name: {{ HOSTNAME_CFG01 }}
-# retry: {count: 1, delay: 30}
-# skip_fail: false
-#
-#- description: Install cinder-volume
-# cmd: salt 'ctl*' cmd.run 'apt-get install cinder-volume -y'
-# node_name: {{ HOSTNAME_CFG01 }}
-# retry: {count: 1, delay: 30}
-# skip_fail: false
-#
-#- description: Install crudini
-# cmd: salt "ctl*" cmd.run 'apt-get install crudini -y'
-# node_name: {{ HOSTNAME_CFG01 }}
-# retry: {count: 1, delay: 30}
-# skip_fail: false
-#
-#- description: Temporary WR set enabled backends value 01
-# cmd: salt-call cmd.run 'crudini --verbose --set /etc/cinder/cinder.conf DEFAULT enabled_backends lvm'
-# node_name: {{ HOSTNAME_CTL01 }}
-# retry: {count: 1, delay: 30}
-# skip_fail: false
-#
-#- description: Temporary WR set enabled backends value 02
-# cmd: salt-call cmd.run 'crudini --verbose --set /etc/cinder/cinder.conf DEFAULT enabled_backends lvm'
-# node_name: {{ HOSTNAME_CTL02 }}
-# retry: {count: 1, delay: 30}
-# skip_fail: false
-#
-#- description: Temporary WR set enabled backends value 03
-# cmd: salt-call cmd.run 'crudini --verbose --set /etc/cinder/cinder.conf DEFAULT enabled_backends lvm'
-# node_name: {{ HOSTNAME_CTL03 }}
-# retry: {count: 1, delay: 30}
-# skip_fail: false
-#
-#- description: Restart cinder volume
-# cmd: |
-# salt -C 'I@cinder:controller' service.restart cinder-volume;
-# node_name: {{ HOSTNAME_CFG01 }}
-# retry: {count: 2, delay: 5}
-# skip_fail: false
-#
-- description: Upload cirros image on ctl01
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- 'wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-i386-disk.img'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 2, delay: 30}
- skip_fail: false
-
-- description: Create net04_external
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron net-create net04_ext --router:external True --provider:physical_network physnet1 --provider:network_type flat'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Create subnet_external
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron subnet-create net04_ext {{ IPV4_NET_EXTERNAL_PREFIX }}.0/24 --name net04_ext__subnet --disable-dhcp --allocation-pool start={{ IPV4_NET_EXTERNAL_PREFIX }}.150,end={{ IPV4_NET_EXTERNAL_PREFIX }}.180 --gateway {{ IPV4_NET_EXTERNAL_PREFIX }}.1'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Create net04
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron net-create net04'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Create subnet_net04
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron subnet-create net04 {{ IPV4_NET_TENANT_PREFIX }}.0/24 --name net04__subnet --allocation-pool start={{ IPV4_NET_TENANT_PREFIX }}.120,end={{ IPV4_NET_TENANT_PREFIX }}.240'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Create router
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron router-create net04_router01'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Set geteway
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron router-gateway-set net04_router01 net04_ext'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Add interface
- cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run
- '. /root/keystonercv3; neutron router-interface-add net04_router01 net04__subnet'
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
- description: sync time
cmd: salt --hard-crash --state-output=mixed --state-verbose=False '*' cmd.run
'service ntp stop; ntpd -gq; service ntp start'
node_name: {{ HOSTNAME_CFG01 }}
retry: {count: 1, delay: 30}
skip_fail: false
-
-
-- description: Enable local docker repo
- cmd: |
- set -e;
- echo "{{ DOCKER_LOCAL_REPO }}" > /etc/apt/sources.list.d/mcp_docker.list;
- apt-get clean; apt-get update;
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Install docker-ce on gtw
- cmd: salt-call cmd.run 'apt-get install docker-ce -y'
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Enable forward policy on gtw
- cmd: |
- set -e;
- iptables --policy FORWARD ACCEPT;
- node_name: {{ HOSTNAME_GTW01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: create rc file on cfg
- cmd: scp ctl01:/root/keystonercv3 /root
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
-
-- description: Copy rc file
- cmd: scp /root/keystonercv3 gtw01:/root
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 30}
- skip_fail: false
diff --git a/tcp_tests/templates/virtual-offline-ssl/salt.yaml b/tcp_tests/templates/virtual-offline-ssl/salt.yaml
index 22cf917..46ab1e4 100644
--- a/tcp_tests/templates/virtual-offline-ssl/salt.yaml
+++ b/tcp_tests/templates/virtual-offline-ssl/salt.yaml
@@ -58,7 +58,19 @@
retry: {count: 1, delay: 10}
skip_fail: false
-{{ SHARED.MACRO_CONFIGURE_RECLASS(FORMULA_SERVICES='"linux" "reclass" "salt" "openssh" "ntp" "git" "nginx" "collectd" "sensu" "heka" "sphinx" "keystone" "mysql" "grafana" "haproxy" "rsyslog" "horizon" "prometheus" "telegraf" "elasticsearch" "powerdns" "fluentd" "backupninja" "watchdog" "dogtag" "runtest" "manila" "auditd" "logrotate" "gnocchi"') }}
+- description: '*Workaround* to remove apt key until migrate on CC'
+ cmd: salt-key -d apt01.virtual-offline-pike-ovs-dpdk -y
+ node_name: {{ HOSTNAME_CFG01 }}
+ retry: {count: 1, delay: 1}
+ skip_fail: true
+
+- description: '*Workaround* stop minion on apt like proxy node'
+ cmd: systemctl stop salt-minion.service
+ node_name: {{ HOSTNAME_APT01 }}
+ retry: {count: 1, delay: 1}
+ skip_fail: true
+
+{{ SHARED.MACRO_CONFIGURE_RECLASS(FORMULA_SERVICES='"linux" "reclass" "salt" "openssh" "ntp" "git" "nginx" "collectd" "sensu" "heka" "sphinx" "keystone" "mysql" "grafana" "haproxy" "rsyslog" "horizon" "prometheus" "telegraf" "elasticsearch" "powerdns" "fluentd" "backupninja" "watchdog" "dogtag" "runtest" "manila" "auditd" "logrotate" "gnocchi" "neutron" ') }}
{{ SHARED.MACRO_INSTALL_SALT_MINIONS() }}
@@ -74,9 +86,9 @@
retry: {count: 1, delay: 10}
skip_fail: false
-- description: Workaround to avoid reboot cmp nodes bring OVS interfaces UP
- cmd: |
- salt 'cmp*' cmd.run "ifup br-mesh";
- node_name: {{ HOSTNAME_CFG01 }}
- retry: {count: 1, delay: 10}
- skip_fail: false
+#- description: Workaround to avoid reboot cmp nodes bring OVS interfaces UP
+# cmd: |
+# salt 'cmp*' cmd.run "ifup br-mesh";
+# node_name: {{ HOSTNAME_CFG01 }}
+# retry: {count: 1, delay: 10}
+# skip_fail: false
diff --git a/tcp_tests/templates/virtual-offline-ssl/underlay.yaml b/tcp_tests/templates/virtual-offline-ssl/underlay.yaml
index 6277d6a..84a1629 100644
--- a/tcp_tests/templates/virtual-offline-ssl/underlay.yaml
+++ b/tcp_tests/templates/virtual-offline-ssl/underlay.yaml
@@ -60,6 +60,7 @@
net: {{ os_env('ADMIN_ADDRESS_POOL01', '10.70.0.0/16:24') }}
params:
ip_reserved:
+ gateway: +122
l2_network_device: +1
default_{{ HOSTNAME_APT01 }}: +122
default_{{ HOSTNAME_CFG01 }}: +90
@@ -102,6 +103,7 @@
net: {{ os_env('EXTERNAL_ADDRESS_POOL01', '10.90.0.0/16:24') }}
params:
ip_reserved:
+ gateway: +1
l2_network_device: +1
default_{{ HOSTNAME_APT01 }}: +122
default_{{ HOSTNAME_CFG01 }}: +100
diff --git a/tcp_tests/tests/system/test_3rdparty_suites.py b/tcp_tests/tests/system/test_3rdparty_suites.py
index 78583af..0abb89b 100644
--- a/tcp_tests/tests/system/test_3rdparty_suites.py
+++ b/tcp_tests/tests/system/test_3rdparty_suites.py
@@ -59,7 +59,7 @@
sl_actions.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py',
junit_report_name='stacklight_report.xml')
# Download report
diff --git a/tcp_tests/tests/system/test_failover_nodes.py b/tcp_tests/tests/system/test_failover_nodes.py
index 1f628c4..8d1f46a 100644
--- a/tcp_tests/tests/system/test_failover_nodes.py
+++ b/tcp_tests/tests/system/test_failover_nodes.py
@@ -167,7 +167,7 @@
sl_os_deployed.check_prometheus_targets(mon_nodes)
before_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
failed_tests = [test['name'] for test in
before_result if 'passed' not in test['outcome']]
# STEP #5
@@ -181,7 +181,7 @@
# Run SL component tetsts
after_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
for test in after_result:
if test['name'] not in failed_tests:
assert 'passed' in test['outcome'], \
@@ -217,7 +217,7 @@
sl_os_deployed.check_prometheus_targets(mon_nodes)
before_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
failed_tests = [test['name'] for test in
before_result if 'passed' not in test['outcome']]
# STEP #5
@@ -228,7 +228,7 @@
# Run SL component tetsts
after_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
for test in after_result:
if test['name'] not in failed_tests:
assert 'passed' in test['outcome'], \
@@ -270,7 +270,7 @@
LOG.debug('Mon nodes list {0}'.format(mon_nodes))
before_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
failed_tests = [test['name'] for test in
before_result if 'passed' not in test['outcome']]
@@ -303,7 +303,7 @@
# Run SL component tetsts
after_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
for test in after_result:
if test['name'] not in failed_tests:
assert 'passed' in test['outcome'], \
diff --git a/tcp_tests/tests/system/test_failover_stacklight_services.py b/tcp_tests/tests/system/test_failover_stacklight_services.py
index 4f4381f..997b4f7 100644
--- a/tcp_tests/tests/system/test_failover_stacklight_services.py
+++ b/tcp_tests/tests/system/test_failover_stacklight_services.py
@@ -74,7 +74,7 @@
LOG.debug('Mon nodes list {0}'.format(mon_nodes))
before_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
failed_tests = [test['name'] for test in
before_result if 'passed' not in test['outcome']]
@@ -103,7 +103,7 @@
show_step(10)
after_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
for test in after_result:
if test['name'] not in failed_tests:
assert 'passed' in test['outcome'], \
@@ -141,7 +141,7 @@
LOG.debug('Mon nodes list {0}'.format(mon_nodes))
before_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
failed_tests = [test['name'] for test in
before_result if 'passed' not in test['outcome']]
# STEP #5
@@ -169,7 +169,7 @@
show_step(10)
after_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
for test in after_result:
if test['name'] not in failed_tests:
assert 'passed' in test['outcome'], \
@@ -208,7 +208,7 @@
LOG.debug('Mon nodes list {0}'.format(mon_nodes))
before_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
failed_tests = [test['name'] for test in
before_result if 'passed' not in test['outcome']]
# STEP #5
@@ -238,7 +238,7 @@
show_step(10)
after_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
for test in after_result:
if test['name'] not in failed_tests:
assert 'passed' in test['outcome'], \
@@ -276,7 +276,7 @@
LOG.debug('Mon nodes list {0}'.format(mon_nodes))
before_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
failed_tests = [test['name'] for test in
before_result if 'passed' not in test['outcome']]
@@ -307,7 +307,7 @@
show_step(10)
after_result = sl_os_deployed.run_sl_tests_json(
'cfg01', '/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus/', 'test_alerts.py')
+ 'tests/', 'test_alerts.py')
for test in after_result:
if test['name'] not in failed_tests:
assert 'passed' in test['outcome'], \
diff --git a/tcp_tests/tests/system/test_install_cookied_ocata.py b/tcp_tests/tests/system/test_install_cookied_ocata.py
index 7aa41b2..bee6f87 100644
--- a/tcp_tests/tests/system/test_install_cookied_ocata.py
+++ b/tcp_tests/tests/system/test_install_cookied_ocata.py
@@ -109,7 +109,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
show_step(10)
diff --git a/tcp_tests/tests/system/test_install_k8s.py b/tcp_tests/tests/system/test_install_k8s.py
index ba5a81d..67d3635 100644
--- a/tcp_tests/tests/system/test_install_k8s.py
+++ b/tcp_tests/tests/system/test_install_k8s.py
@@ -114,7 +114,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
# Download report
@@ -173,7 +173,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
# Download report
diff --git a/tcp_tests/tests/system/test_install_mcp11_ovs_ocata.py b/tcp_tests/tests/system/test_install_mcp11_ovs_ocata.py
index 4f78c0d..8c9e89c 100644
--- a/tcp_tests/tests/system/test_install_mcp11_ovs_ocata.py
+++ b/tcp_tests/tests/system/test_install_mcp11_ovs_ocata.py
@@ -73,7 +73,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
# Download report
@@ -132,7 +132,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
# Download report
diff --git a/tcp_tests/tests/system/test_install_mcp_ovs_pike.py b/tcp_tests/tests/system/test_install_mcp_ovs_pike.py
index a34496b..d10d250 100644
--- a/tcp_tests/tests/system/test_install_mcp_ovs_pike.py
+++ b/tcp_tests/tests/system/test_install_mcp_ovs_pike.py
@@ -74,7 +74,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
# Download report
@@ -133,7 +133,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
# Download report
@@ -399,5 +399,136 @@
openstack_actions.install(commands)
if settings.RUN_TEMPEST:
- tempest_actions.prepare_and_run_tempest()
+ tempest_actions.prepare_and_run_tempest(
+ store_run_test_model=False)
+ LOG.info("*************** DONE **************")
+
+ @pytest.mark.fail_snapshot
+ def test_pipeline_offline_os_dpdk_l2gtw(self, show_step,
+ underlay, config,
+ salt_deployed,
+ tempest_actions,
+ openstack_actions):
+ """Deploy cid, deploys os with pipelines
+
+ Scenario:
+ 1. Prepare salt on hosts.
+ 2. Connect to jenkins on cfg01 node
+ 3. Run deploy on cfg01 node
+ 4. Connect to jenkins on cid node
+ 5. Run deploy DT on cid node
+ 6. Run deploy of os with DT
+ """
+ show_step(1)
+ nodes = underlay.node_names()
+ LOG.info("Nodes - {}".format(nodes))
+ show_step(2)
+ cfg_node_name = underlay.get_target_node_names(
+ target='cfg')[0]
+ salt_api = salt_deployed.get_pillar(
+ cfg_node_name, '_param:jenkins_salt_api_url')
+ salt_api = salt_api[0].get(cfg_node_name)
+ jenkins = JenkinsClient(
+ host='http://{}:8081'.format(config.salt.salt_master_host),
+ username='admin',
+ password='r00tme')
+ params = jenkins.make_defults_params('deploy_openstack')
+ params['SALT_MASTER_URL'] = salt_api
+ params['STACK_INSTALL'] = 'core,cicd'
+
+ show_step(3)
+ build = jenkins.run_build('deploy_openstack', params)
+ jenkins.wait_end_of_build(
+ name=build[0],
+ build_id=build[1],
+ timeout=60 * 60 * 4)
+ result = jenkins.build_info(name=build[0],
+ build_id=build[1])['result']
+ assert result == 'SUCCESS', \
+ "Deploy core, cid failed {0}{1}".format(
+ jenkins.build_info(name=build[0], build_id=build[1]), result)
+
+ show_step(4)
+ cid_node = underlay.get_target_node_names(
+ target='cid01')[0]
+ salt_output = salt_deployed.get_pillar(
+ cid_node, 'jenkins:client:master:password')
+ cid_passwd = salt_output[0].get(cid_node)
+
+ pillar = 'keepalived:cluster:instance:cicd_control_vip:address'
+ addresses = salt_deployed.get_pillar('cid01*', pillar)
+ ip = list(set([ip
+ for item in addresses
+ for node, ip in item.items() if ip]))
+ LOG.info('Jenkins ip is {}'.format(ip))
+ try:
+ assert len(ip) > 0, 'fail to find jenkins ip'
+ except AssertionError:
+ salt_deployed._salt.local(
+ tgt='cid*', fun='cmd.run',
+ args='service keepalived restart')
+ addresses = salt_deployed.get_pillar('cid01*', pillar)
+ ip = list(set([ip
+ for item in addresses
+ for node, ip in item.items() if ip]))
+ LOG.info('Jenkins ip is {}'.format(ip))
+ assert len(ip) > 0, 'fail to find jenkins ip {}'.format(addresses)
+
+ jenkins = JenkinsClient(
+ host='http://{}:8081'.format(ip[0]),
+ username='admin',
+ password=cid_passwd)
+ params['STACK_INSTALL'] = 'ovs,openstack'
+ params['SALT_MASTER_URL'] = 'http://{}:6969'.format(
+ config.salt.salt_master_host)
+ show_step(5)
+ build = jenkins.run_build('deploy_openstack', params)
+ jenkins.wait_end_of_build(
+ name=build[0],
+ build_id=build[1],
+ timeout=60 * 60 * 4)
+ result = jenkins.build_info(name=build[0],
+ build_id=build[1])['result']
+ assert result == 'SUCCESS',\
+ "Deploy openstack was failed with results {0} {1}".format(
+ jenkins.build_info(name=build[0], build_id=build[1]),
+ result)
+
+ # Prepare resources before test
+ steps_path = config.openstack_deploy.openstack_resources_steps_path
+ commands = underlay.read_template(steps_path)
+ openstack_actions.install(commands)
+
+ registry = 'docker-dev-local.docker.mirantis.net/mirantis/networking'
+ name = 'rally-tempest-net-features:latest'
+
+ if settings.RUN_TEMPEST:
+ openstack_actions.prepare_and_run_tempest(
+ pattern=settings.PATTERN,
+ conf_name='net_features.conf',
+ registry='{0}/{1}'.format(registry, name),
+ store_run_test_model=False
+ )
+ openstack_actions.download_tempest_report()
+ LOG.info("*************** DONE **************")
+
+ @pytest.mark.grab_versions
+ @pytest.mark.fail_snapshot
+ def test_offline_barbican_install(self, underlay,
+ openstack_deployed,
+ openstack_actions,
+ tempest_actions):
+ """Test for deploying an mcp environment and check it
+ Scenario:
+ 1. Prepare salt on hosts
+ 2. Setup controller nodes
+ 3. Setup compute nodes
+ 4. Run tempest
+
+ """
+ openstack_actions._salt.local(
+ tgt='*', fun='cmd.run',
+ args='service ntp stop; ntpd -gq; service ntp start')
+ if settings.RUN_TEMPEST:
+ tempest_actions.prepare_and_run_tempest(store_run_test_model=False)
LOG.info("*************** DONE **************")
diff --git a/tcp_tests/tests/system/test_install_mcp_queens.py b/tcp_tests/tests/system/test_install_mcp_queens.py
index b644d26..315053e 100644
--- a/tcp_tests/tests/system/test_install_mcp_queens.py
+++ b/tcp_tests/tests/system/test_install_mcp_queens.py
@@ -94,7 +94,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
# Download report
@@ -152,7 +152,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
# Download report
@@ -210,7 +210,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
# Download report
diff --git a/tcp_tests/tests/system/test_install_mcp_sl_os.py b/tcp_tests/tests/system/test_install_mcp_sl_os.py
index ce56f7f..93358cb 100644
--- a/tcp_tests/tests/system/test_install_mcp_sl_os.py
+++ b/tcp_tests/tests/system/test_install_mcp_sl_os.py
@@ -69,28 +69,6 @@
@pytest.mark.grab_versions
@pytest.mark.fail_snapshot
- def test_mcp_os_newton_install(self, underlay, openstack_deployed,
- openstack_actions):
- """Test for deploying an mcp environment and check it
- Scenario:
- 1. Prepare salt on hosts
- 2. Setup controller nodes
- 3. Setup compute nodes
- 4. Run tempest
-
- """
- openstack_actions._salt.local(
- tgt='*', fun='cmd.run',
- args='service ntp stop; ntpd -gq; service ntp start')
-
- if settings.RUN_TEMPEST:
- openstack_actions.run_tempest(pattern=settings.PATTERN,
- conf_name='lvm_mcp_newton.conf')
- openstack_actions.download_tempest_report()
- LOG.info("*************** DONE **************")
-
- @pytest.mark.grab_versions
- @pytest.mark.fail_snapshot
def test_mcp_sl_os_install(self, underlay, config, openstack_deployed,
stacklight_deployed, openstack_actions):
"""Test for deploying an mcp environment and check it
@@ -113,7 +91,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
# Download report
diff --git a/tcp_tests/tests/system/test_install_mcp_trusty.py b/tcp_tests/tests/system/test_install_mcp_trusty.py
index c91d3a4..9279bed 100644
--- a/tcp_tests/tests/system/test_install_mcp_trusty.py
+++ b/tcp_tests/tests/system/test_install_mcp_trusty.py
@@ -72,7 +72,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
# Download report
diff --git a/tcp_tests/tests/system/test_install_opencontrail.py b/tcp_tests/tests/system/test_install_opencontrail.py
index 63a60f2..0e12205 100644
--- a/tcp_tests/tests/system/test_install_opencontrail.py
+++ b/tcp_tests/tests/system/test_install_opencontrail.py
@@ -54,7 +54,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
show_step(8)
# Download report
@@ -114,7 +114,7 @@
stacklight_deployed.run_sl_functional_tests(
'ctl01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
show_step(8)
# Download report
@@ -180,7 +180,7 @@
stacklight_deployed.run_sl_functional_tests(
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
- 'tests/prometheus',
+ 'tests',
'test_alerts.py')
show_step(8)
# Download report
diff --git a/tcp_tests/tests/system/test_upgrade_stacklight.py b/tcp_tests/tests/system/test_upgrade_stacklight.py
index afad0c8..56f6a79 100644
--- a/tcp_tests/tests/system/test_upgrade_stacklight.py
+++ b/tcp_tests/tests/system/test_upgrade_stacklight.py
@@ -51,7 +51,7 @@
'cfg01',
'/root/stacklight-pytest/stacklight_tests/',
'tests',
- 'tests/prometheus')
+ 'tests_alerts.py')
# Download report
stacklight_deployed.download_sl_test_report(
diff --git a/tcp_tests/utils/env_jenkins_cicd b/tcp_tests/utils/env_jenkins_cicd
index 04cdd56..72a8547 100755
--- a/tcp_tests/utils/env_jenkins_cicd
+++ b/tcp_tests/utils/env_jenkins_cicd
@@ -22,12 +22,12 @@
unset JENKINS_START_TIMEOUT
unset JENKINS_BUILD_TIMEOUT
else
- MASTER="get_param.py -C I@docker:client:stack:jenkins pillar.get jenkins:client:master"
- export JENKINS_HOST=$(${CURRENT_DIR}/${MASTER}:host)
- export JENKINS_PORT=$(${CURRENT_DIR}/${MASTER}:port)
+ MASTER_TARGET='I@docker:client:stack:jenkins and cid01*'
+ export JENKINS_HOST=$(${CURRENT_DIR}/get_param.py -C "${MASTER_TARGET}" pillar.get jenkins:client:master:host)
+ export JENKINS_PORT=$(${CURRENT_DIR}/get_param.py -C "${MASTER_TARGET}" pillar.get jenkins:client:master:port)
export JENKINS_URL=http://${JENKINS_HOST}:${JENKINS_PORT}
- export JENKINS_USER=$(${CURRENT_DIR}/${MASTER}:username)
- export JENKINS_PASS=$(${CURRENT_DIR}/${MASTER}:password)
+ export JENKINS_USER=$(${CURRENT_DIR}/get_param.py -C "${MASTER_TARGET}" pillar.get jenkins:client:master:username)
+ export JENKINS_PASS=$(${CURRENT_DIR}/get_param.py -C "${MASTER_TARGET}" pillar.get jenkins:client:master:password)
export JENKINS_START_TIMEOUT=60
export JENKINS_BUILD_TIMEOUT=1800
fi