From e51b751c19b9a54cfa7728188bfb0b2ff2323ce8 Mon Sep 17 00:00:00 2001 From: Alex Kavanagh Date: Tue, 15 Mar 2022 20:15:29 +0000 Subject: [PATCH] Update to build using charmcraft - xena batch Batch to add building by charmcraft for the xena batch. Supports just wallaby and xena in gate. Change-Id: I442d7c4ca66fff5f4991deca2306e89ec28af16c --- .gitignore | 1 + .gitreview | 2 +- .zuul.yaml | 3 +- build-requirements.txt | 7 + charm-helpers-hooks.yaml | 2 +- charmcraft.yaml | 34 ++++ metadata.yaml | 5 - osci.yaml | 102 ++-------- rename.sh | 13 ++ test-requirements.txt | 5 +- tests/bundles/bionic-queens-dvr-snat.yaml | 125 ------------ tests/bundles/bionic-rocky-dvr-snat.yaml | 125 ------------ tests/bundles/bionic-stein-dvr-snat.yaml | 125 ------------ tests/bundles/bionic-train-dvr-snat.yaml | 139 ------------- tests/bundles/bionic-ussuri-dvr-snat.yaml | 140 -------------- tests/bundles/focal-ussuri-dvr-snat.yaml | 204 -------------------- tests/bundles/focal-victoria-dvr-snat.yaml | 204 -------------------- tests/bundles/focal-wallaby-dvr-snat.yaml | 60 ++++-- tests/bundles/focal-xena-dvr-snat.yaml | 60 ++++-- tests/bundles/groovy-victoria-dvr-snat.yaml | 204 -------------------- tests/bundles/hirsute-wallaby-dvr-snat.yaml | 204 -------------------- tests/bundles/impish-xena-dvr-snat.yaml | 204 -------------------- tests/bundles/trusty-mitaka.yaml | 133 ------------- tests/bundles/xenial-mitaka.yaml | 133 ------------- tests/bundles/xenial-ocata.yaml | 133 ------------- tests/bundles/xenial-pike.yaml | 133 ------------- tests/bundles/xenial-queens-dvr-snat.yaml | 125 ------------ tests/tests.yaml | 22 +-- tox.ini | 17 +- 29 files changed, 171 insertions(+), 2493 deletions(-) create mode 100644 build-requirements.txt create mode 100644 charmcraft.yaml create mode 100755 rename.sh delete mode 100644 tests/bundles/bionic-queens-dvr-snat.yaml delete mode 100644 tests/bundles/bionic-rocky-dvr-snat.yaml delete mode 100644 tests/bundles/bionic-stein-dvr-snat.yaml delete mode 100644 tests/bundles/bionic-train-dvr-snat.yaml delete mode 100644 tests/bundles/bionic-ussuri-dvr-snat.yaml delete mode 100644 tests/bundles/focal-ussuri-dvr-snat.yaml delete mode 100644 tests/bundles/focal-victoria-dvr-snat.yaml delete mode 100644 tests/bundles/groovy-victoria-dvr-snat.yaml delete mode 100644 tests/bundles/hirsute-wallaby-dvr-snat.yaml delete mode 100644 tests/bundles/impish-xena-dvr-snat.yaml delete mode 100644 tests/bundles/trusty-mitaka.yaml delete mode 100644 tests/bundles/xenial-mitaka.yaml delete mode 100644 tests/bundles/xenial-ocata.yaml delete mode 100644 tests/bundles/xenial-pike.yaml delete mode 100644 tests/bundles/xenial-queens-dvr-snat.yaml diff --git a/.gitignore b/.gitignore index b5db5c04..9e73e008 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ func-results.json __pycache__ joined-string .idea +*.charm diff --git a/.gitreview b/.gitreview index ec93900c..1855b501 100644 --- a/.gitreview +++ b/.gitreview @@ -3,4 +3,4 @@ host=review.opendev.org port=29418 project=openstack/charm-neutron-openvswitch.git -defaultbranch=stable/21.10 +defaultbranch=stable/xena diff --git a/.zuul.yaml b/.zuul.yaml index b3037e94..3986fcaf 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -1,5 +1,4 @@ - project: templates: - - python35-charm-jobs - - openstack-python3-ussuri-jobs + - openstack-python3-xena-jobs - openstack-cover-jobs diff --git a/build-requirements.txt b/build-requirements.txt new file mode 100644 index 00000000..b6d2452f --- /dev/null +++ b/build-requirements.txt @@ -0,0 +1,7 @@ +# NOTES(lourot): +# * We don't install charmcraft via pip anymore because it anyway spins up a +# container and scp the system's charmcraft snap inside it. So the charmcraft +# snap is necessary on the system anyway. +# * `tox -e build` successfully validated with charmcraft 1.2.1 + +cffi==1.14.6; python_version < '3.6' # cffi 1.15.0 drops support for py35. diff --git a/charm-helpers-hooks.yaml b/charm-helpers-hooks.yaml index 43c4bb12..9a5943ee 100644 --- a/charm-helpers-hooks.yaml +++ b/charm-helpers-hooks.yaml @@ -1,4 +1,4 @@ -repo: https://github.com/juju/charm-helpers@stable/21.10 +repo: https://github.com/juju/charm-helpers@stable/xena destination: hooks/charmhelpers include: - core diff --git a/charmcraft.yaml b/charmcraft.yaml new file mode 100644 index 00000000..c69b8e8c --- /dev/null +++ b/charmcraft.yaml @@ -0,0 +1,34 @@ +type: charm + +parts: + charm: + plugin: dump + source: . + prime: + - actions/* + - charmhelpers/* + - files/* + - hooks/* + - lib/* + - templates/* + - actions.yaml + - config.yaml + - copyright + - icon.svg + - LICENSE + - Makefile + - metadata.yaml + - README.md + +bases: + - build-on: + - name: ubuntu + channel: "20.04" + architectures: + - amd64 + - s390x + - ppc64el + - arm64 + run-on: + - name: ubuntu + channel: "20.04" diff --git a/metadata.yaml b/metadata.yaml index d46d7e87..45d7d33d 100644 --- a/metadata.yaml +++ b/metadata.yaml @@ -17,12 +17,7 @@ description: | tags: - openstack series: -- xenial -- bionic - focal -- groovy -- hirsute -- impish extra-bindings: data: provides: diff --git a/osci.yaml b/osci.yaml index 59e4c284..3f0f0e2c 100644 --- a/osci.yaml +++ b/osci.yaml @@ -1,102 +1,30 @@ - project: templates: - - charm-unit-jobs + - charm-unit-jobs-py38 check: jobs: - # Made non-voting as test occasionally hangs: lp#1936379 - - xenial-mitaka_ovs: - voting: false - - bionic-queens-dvr-snat - - bionic-stein-dvr-snat - - bionic-train-dvr-snat - - bionic-ussuri-dvr-snat - - migrate-ovn-focal-ussuri-dvr-snat - - migrate-ovn-focal-victoria-dvr-snat - - migrate-ovn-focal-wallaby-dvr-snat: - voting: false - - migrate-ovn-focal-xena-dvr-snat: - voting: false - - migrate-ovn-groovy-victoria-dvr-snat: - voting: false - - migrate-ovn-hirsute-wallaby-dvr-snat: - voting: false - - migrate-ovn-impish-xena-dvr-snat: - voting: false + - migrate-ovn-focal-wallaby-dvr-snat + - migrate-ovn-focal-xena-dvr-snat + vars: + needs_charm_build: true + charm_build_name: neutron-openvswitch + build_type: charmcraft -- job: - name: bionic-queens-dvr-snat - parent: func-target - dependencies: &smoke-jobs - - migrate-ovn-focal-ussuri-dvr-snat - vars: - tox_extra_args: bionic-queens-dvr-snat -- job: - name: bionic-stein-dvr-snat - parent: func-target - dependencies: *smoke-jobs - vars: - tox_extra_args: bionic-stein-dvr-snat -- job: - name: bionic-train-dvr-snat - parent: func-target - dependencies: *smoke-jobs - vars: - tox_extra_args: bionic-train-dvr-snat -- job: - name: bionic-ussuri-dvr-snat - parent: func-target - dependencies: *smoke-jobs - vars: - tox_extra_args: bionic-ussuri-dvr-snat -- job: - name: migrate-ovn-focal-ussuri-dvr-snat - parent: func-target - dependencies: - - osci-lint - - tox-py35 - - tox-py36 - - tox-py37 - - tox-py38 - vars: - tox_extra_args: migrate-ovn:focal-ussuri-dvr-snat -- job: - name: migrate-ovn-focal-victoria-dvr-snat - parent: func-target - dependencies: *smoke-jobs - vars: - tox_extra_args: migrate-ovn:focal-victoria-dvr-snat - job: name: migrate-ovn-focal-wallaby-dvr-snat parent: func-target - dependencies: *smoke-jobs + dependencies: + - osci-lint + - tox-py38 + - charm-build vars: tox_extra_args: migrate-ovn:focal-wallaby-dvr-snat - job: name: migrate-ovn-focal-xena-dvr-snat parent: func-target - dependencies: *smoke-jobs + dependencies: + - osci-lint + - tox-py38 + - charm-build vars: tox_extra_args: migrate-ovn:focal-xena-dvr-snat -- job: - name: migrate-ovn-groovy-victoria-dvr-snat - parent: func-target - dependencies: *smoke-jobs - vars: - tox_extra_args: migrate-ovn:groovy-victoria-dvr-snat -- job: - name: migrate-ovn-hirsute-wallaby-dvr-snat - parent: func-target - dependencies: *smoke-jobs - vars: - tox_extra_args: migrate-ovn:hirsute-wallaby-dvr-snat -- job: - name: migrate-ovn-impish-xena-dvr-snat - parent: func-target - dependencies: *smoke-jobs - vars: - tox_extra_args: migrate-ovn:impish-xena-dvr-snat -# Redefining these here to override their dependencies -- job: - name: xenial-mitaka_ovs - dependencies: *smoke-jobs - parent: xenial-mitaka diff --git a/rename.sh b/rename.sh new file mode 100755 index 00000000..d0c35c97 --- /dev/null +++ b/rename.sh @@ -0,0 +1,13 @@ +#!/bin/bash +charm=$(grep "charm_build_name" osci.yaml | awk '{print $2}') +echo "renaming ${charm}_*.charm to ${charm}.charm" +echo -n "pwd: " +pwd +ls -al +echo "Removing bad downloaded charm maybe?" +if [[ -e "${charm}.charm" ]]; +then + rm "${charm}.charm" +fi +echo "Renaming charm here." +mv ${charm}_*.charm ${charm}.charm diff --git a/test-requirements.txt b/test-requirements.txt index 0a7e94a0..9e9b8aaa 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -7,6 +7,7 @@ # requirements. They are intertwined. Also, Zaza itself should specify # all of its own requirements and if it doesn't, fix it there. # +pyparsing<3.0.0 # cffi needs pyparsing < 3.0.0. cffi==1.14.6; python_version < '3.6' # cffi 1.15.0 drops support for py35. setuptools<50.0.0 # https://github.com/pypa/setuptools/commit/04e3df22df840c6bb244e9b27bc56750c44b7c85 @@ -37,8 +38,8 @@ oslo.utils<=3.41.0;python_version<'3.6' coverage>=4.5.2 pyudev # for ceph-* charm unit tests (need to fix the ceph-* charm unit tests/mocking) -git+https://github.com/openstack-charmers/zaza.git@stable/21.10#egg=zaza -git+https://github.com/openstack-charmers/zaza-openstack-tests.git@stable/21.10#egg=zaza.openstack +git+https://github.com/openstack-charmers/zaza.git@stable/xena#egg=zaza +git+https://github.com/openstack-charmers/zaza-openstack-tests.git@stable/xena#egg=zaza.openstack # Needed for charm-glance: git+https://opendev.org/openstack/tempest.git#egg=tempest;python_version>='3.6' diff --git a/tests/bundles/bionic-queens-dvr-snat.yaml b/tests/bundles/bionic-queens-dvr-snat.yaml deleted file mode 100644 index 03002946..00000000 --- a/tests/bundles/bionic-queens-dvr-snat.yaml +++ /dev/null @@ -1,125 +0,0 @@ -variables: - openstack-origin: &openstack-origin distro - -series: &series bionic - -machines: - 0: - constraints: "mem=3072M" - 1: {} - 2: {} - 3: {} - 4: {} - 5: {} - 6: - constraints: "root-disk=20G mem=4G" - 7: - constraints: "root-disk=20G mem=4G" - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - percona-cluster: - charm: cs:~openstack-charmers/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - overlay-network-type: 'vxlan' - l2-population: True - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - enable-dvr: True - to: - - '2' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '4' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - options: - use-dvr-snat: True - bridge-mappings: physnet1:br-ex - enable-local-dhcp-and-metadata: True - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '5' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '6' - - '7' -relations: - - - 'neutron-api:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'keystone:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:shared-db' - - 'percona-cluster:shared-db' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' diff --git a/tests/bundles/bionic-rocky-dvr-snat.yaml b/tests/bundles/bionic-rocky-dvr-snat.yaml deleted file mode 100644 index 472af6d5..00000000 --- a/tests/bundles/bionic-rocky-dvr-snat.yaml +++ /dev/null @@ -1,125 +0,0 @@ -variables: - openstack-origin: &openstack-origin cloud:bionic-rocky - -series: &series bionic - -machines: - 0: - constraints: "mem=3072M" - 1: {} - 2: {} - 3: {} - 4: {} - 5: {} - 6: - constraints: "root-disk=20G mem=4G" - 7: - constraints: "root-disk=20G mem=4G" - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - percona-cluster: - charm: cs:~openstack-charmers/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - overlay-network-type: 'vxlan' - l2-population: True - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - enable-dvr: True - to: - - '2' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '4' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - options: - use-dvr-snat: True - bridge-mappings: physnet1:br-ex - enable-local-dhcp-and-metadata: True - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '5' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '6' - - '7' -relations: - - - 'neutron-api:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'keystone:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:shared-db' - - 'percona-cluster:shared-db' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' diff --git a/tests/bundles/bionic-stein-dvr-snat.yaml b/tests/bundles/bionic-stein-dvr-snat.yaml deleted file mode 100644 index 2bfb9921..00000000 --- a/tests/bundles/bionic-stein-dvr-snat.yaml +++ /dev/null @@ -1,125 +0,0 @@ -variables: - openstack-origin: &openstack-origin cloud:bionic-stein - -series: &series bionic - -machines: - 0: - constraints: "mem=3072M" - 1: {} - 2: {} - 3: {} - 4: {} - 5: {} - 6: - constraints: "root-disk=20G mem=4G" - 7: - constraints: "root-disk=20G mem=4G" - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - percona-cluster: - charm: cs:~openstack-charmers/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - overlay-network-type: 'vxlan' - l2-population: True - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - enable-dvr: True - to: - - '2' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '4' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - options: - use-dvr-snat: True - bridge-mappings: physnet1:br-ex - enable-local-dhcp-and-metadata: True - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '5' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '6' - - '7' -relations: - - - 'neutron-api:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'keystone:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:shared-db' - - 'percona-cluster:shared-db' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' diff --git a/tests/bundles/bionic-train-dvr-snat.yaml b/tests/bundles/bionic-train-dvr-snat.yaml deleted file mode 100644 index e3321c1a..00000000 --- a/tests/bundles/bionic-train-dvr-snat.yaml +++ /dev/null @@ -1,139 +0,0 @@ -variables: - openstack-origin: &openstack-origin cloud:bionic-train - -series: &series bionic - -machines: - 0: - constraints: "mem=3072M" - 1: {} - 2: {} - 3: {} - 4: {} - 5: {} - 6: - constraints: "root-disk=20G mem=4G" - 7: - constraints: "root-disk=20G mem=4G" - 8: {} - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - percona-cluster: - charm: cs:~openstack-charmers/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - overlay-network-type: 'vxlan' - l2-population: True - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - enable-dvr: True - to: - - '2' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '4' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - options: - use-dvr-snat: True - bridge-mappings: physnet1:br-ex - enable-local-dhcp-and-metadata: True - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '5' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '6' - - '7' - placement: - charm: cs:~openstack-charmers/placement - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '8' -relations: - - - 'neutron-api:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'keystone:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:shared-db' - - 'percona-cluster:shared-db' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' - - - 'placement:shared-db' - - 'percona-cluster:shared-db' - - - 'placement:identity-service' - - 'keystone:identity-service' - - - 'placement:placement' - - 'nova-cloud-controller:placement' diff --git a/tests/bundles/bionic-ussuri-dvr-snat.yaml b/tests/bundles/bionic-ussuri-dvr-snat.yaml deleted file mode 100644 index 13b652a4..00000000 --- a/tests/bundles/bionic-ussuri-dvr-snat.yaml +++ /dev/null @@ -1,140 +0,0 @@ -variables: - openstack-origin: &openstack-origin cloud:bionic-ussuri - -series: &series bionic - -machines: - 0: - constraints: "mem=3072M" - 1: {} - 2: {} - 3: {} - 4: {} - 5: {} - 6: - constraints: "root-disk=20G mem=4G" - 7: - constraints: "root-disk=20G mem=4G" - 8: {} - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - percona-cluster: - charm: cs:~openstack-charmers/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - manage-neutron-plugin-legacy-mode: true - overlay-network-type: 'vxlan' - l2-population: True - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - enable-dvr: True - to: - - '2' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '4' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - options: - use-dvr-snat: True - bridge-mappings: physnet1:br-ex - enable-local-dhcp-and-metadata: True - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '5' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '6' - - '7' - placement: - charm: cs:~openstack-charmers/placement - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '8' -relations: - - - 'neutron-api:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'keystone:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:shared-db' - - 'percona-cluster:shared-db' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' - - - 'placement:shared-db' - - 'percona-cluster:shared-db' - - - 'placement:identity-service' - - 'keystone:identity-service' - - - 'placement:placement' - - 'nova-cloud-controller:placement' diff --git a/tests/bundles/focal-ussuri-dvr-snat.yaml b/tests/bundles/focal-ussuri-dvr-snat.yaml deleted file mode 100644 index 7822ed57..00000000 --- a/tests/bundles/focal-ussuri-dvr-snat.yaml +++ /dev/null @@ -1,204 +0,0 @@ -variables: - openstack-origin: &openstack-origin distro - -series: &series focal - -machines: - 0: - constraints: "mem=3072M" - 1: - constraints: "mem=3072M" - 2: - constraints: "mem=3072M" - 3: {} - 4: {} - 5: {} - 6: {} - 7: {} - 8: - constraints: "root-disk=20G mem=4G" - 9: - constraints: "root-disk=20G mem=4G" - 10: {} - 11: {} - 12: {} - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - keystone-mysql-router: - charm: cs:~openstack-charmers/mysql-router - nova-mysql-router: - charm: cs:~openstack-charmers/mysql-router - glance-mysql-router: - charm: cs:~openstack-charmers/mysql-router - neutron-mysql-router: - charm: cs:~openstack-charmers/mysql-router - placement-mysql-router: - charm: cs:~openstack-charmers/mysql-router - vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router - mysql-innodb-cluster: - charm: cs:~openstack-charmers/mysql-innodb-cluster - num_units: 3 - options: - source: *openstack-origin - to: - - '0' - - '1' - - '2' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '3' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - manage-neutron-plugin-legacy-mode: true - overlay-network-type: 'vxlan' - l2-population: True - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - enable-dvr: True - to: - - '4' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '5' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '6' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - options: - use-dvr-snat: True - bridge-mappings: physnet1:br-ex - enable-local-dhcp-and-metadata: True - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '7' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '8' - - '9' - placement: - charm: cs:~openstack-charmers/placement - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '10' - vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router - vault: - charm: cs:~openstack-charmers/vault - num_units: 1 - to: - - '11' - ovn-central: - charm: cs:~openstack-charmers/ovn-central - num_units: 3 - options: - source: *openstack-origin - to: - - '12' - neutron-api-plugin-ovn: - charm: cs:~openstack-charmers/neutron-api-plugin-ovn - ovn-chassis: - charm: cs:~openstack-charmers/ovn-chassis - options: - # start new units paused to allow unit by unit OVS to OVN migration - new-units-paused: true -relations: - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' - - - 'placement:identity-service' - - 'keystone:identity-service' - - - 'placement:placement' - - 'nova-cloud-controller:placement' - - ["keystone:shared-db", "keystone-mysql-router:shared-db"] - - ["glance:shared-db", "glance-mysql-router:shared-db"] - - ["nova-cloud-controller:shared-db", "nova-mysql-router:shared-db"] - - ["neutron-api:shared-db", "neutron-mysql-router:shared-db"] - - ["placement:shared-db", "placement-mysql-router:shared-db"] - - ["keystone-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["nova-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["glance-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["neutron-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["placement-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - # We need to defer the addition of the neutron-api-plugin-ovn subordinate - # relation to the functional test as the test will first validate the legacy - # Neutron ML2+OVS topology, migrate it to OVN and then confirm connectivity - # post migration. - # - # - - neutron-api-plugin-ovn:neutron-plugin - # - neutron-api:neutron-plugin-api-subordinate - - - ovn-central:certificates - - vault:certificates - - - ovn-central:ovsdb-cms - - neutron-api-plugin-ovn:ovsdb-cms - - - ovn-chassis:nova-compute - - nova-compute:neutron-plugin - - - ovn-chassis:certificates - - vault:certificates - - - ovn-chassis:ovsdb - - ovn-central:ovsdb - - - vault:certificates - - neutron-api-plugin-ovn:certificates - - - vault:shared-db - - vault-mysql-router:shared-db - - - vault-mysql-router:db-router - - mysql-innodb-cluster:db-router diff --git a/tests/bundles/focal-victoria-dvr-snat.yaml b/tests/bundles/focal-victoria-dvr-snat.yaml deleted file mode 100644 index 3a8f3e6d..00000000 --- a/tests/bundles/focal-victoria-dvr-snat.yaml +++ /dev/null @@ -1,204 +0,0 @@ -variables: - openstack-origin: &openstack-origin cloud:focal-victoria - -series: &series focal - -machines: - 0: - constraints: "mem=3072M" - 1: - constraints: "mem=3072M" - 2: - constraints: "mem=3072M" - 3: {} - 4: {} - 5: {} - 6: {} - 7: {} - 8: - constraints: "root-disk=20G mem=4G" - 9: - constraints: "root-disk=20G mem=4G" - 10: {} - 11: {} - 12: {} - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - keystone-mysql-router: - charm: cs:~openstack-charmers/mysql-router - nova-mysql-router: - charm: cs:~openstack-charmers/mysql-router - glance-mysql-router: - charm: cs:~openstack-charmers/mysql-router - neutron-mysql-router: - charm: cs:~openstack-charmers/mysql-router - placement-mysql-router: - charm: cs:~openstack-charmers/mysql-router - vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router - mysql-innodb-cluster: - charm: cs:~openstack-charmers/mysql-innodb-cluster - num_units: 3 - options: - source: *openstack-origin - to: - - '0' - - '1' - - '2' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '3' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - manage-neutron-plugin-legacy-mode: true - overlay-network-type: 'vxlan' - l2-population: True - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - enable-dvr: True - to: - - '4' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '5' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '6' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - options: - use-dvr-snat: True - bridge-mappings: physnet1:br-ex - enable-local-dhcp-and-metadata: True - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '7' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '8' - - '9' - placement: - charm: cs:~openstack-charmers/placement - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '10' - vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router - vault: - charm: cs:~openstack-charmers/vault - num_units: 1 - to: - - '11' - ovn-central: - charm: cs:~openstack-charmers/ovn-central - num_units: 3 - options: - source: *openstack-origin - to: - - '12' - neutron-api-plugin-ovn: - charm: cs:~openstack-charmers/neutron-api-plugin-ovn - ovn-chassis: - charm: cs:~openstack-charmers/ovn-chassis - options: - # start new units paused to allow unit by unit OVS to OVN migration - new-units-paused: true -relations: - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' - - - 'placement:identity-service' - - 'keystone:identity-service' - - - 'placement:placement' - - 'nova-cloud-controller:placement' - - ["keystone:shared-db", "keystone-mysql-router:shared-db"] - - ["glance:shared-db", "glance-mysql-router:shared-db"] - - ["nova-cloud-controller:shared-db", "nova-mysql-router:shared-db"] - - ["neutron-api:shared-db", "neutron-mysql-router:shared-db"] - - ["placement:shared-db", "placement-mysql-router:shared-db"] - - ["keystone-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["nova-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["glance-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["neutron-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["placement-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - # We need to defer the addition of the neutron-api-plugin-ovn subordinate - # relation to the functional test as the test will first validate the legacy - # Neutron ML2+OVS topology, migrate it to OVN and then confirm connectivity - # post migration. - # - # - - neutron-api-plugin-ovn:neutron-plugin - # - neutron-api:neutron-plugin-api-subordinate - - - ovn-central:certificates - - vault:certificates - - - ovn-central:ovsdb-cms - - neutron-api-plugin-ovn:ovsdb-cms - - - ovn-chassis:nova-compute - - nova-compute:neutron-plugin - - - ovn-chassis:certificates - - vault:certificates - - - ovn-chassis:ovsdb - - ovn-central:ovsdb - - - vault:certificates - - neutron-api-plugin-ovn:certificates - - - vault:shared-db - - vault-mysql-router:shared-db - - - vault-mysql-router:db-router - - mysql-innodb-cluster:db-router diff --git a/tests/bundles/focal-wallaby-dvr-snat.yaml b/tests/bundles/focal-wallaby-dvr-snat.yaml index a8857b60..1b3372d5 100644 --- a/tests/bundles/focal-wallaby-dvr-snat.yaml +++ b/tests/bundles/focal-wallaby-dvr-snat.yaml @@ -1,3 +1,5 @@ +local_overlay_enabled: False + variables: openstack-origin: &openstack-origin cloud:focal-wallaby @@ -27,19 +29,25 @@ machines: # time, given that machine "0" comes up way before machine "7" applications: keystone-mysql-router: - charm: cs:~openstack-charmers/mysql-router + charm: ch:mysql-router + channel: 8.0.19/edge nova-mysql-router: - charm: cs:~openstack-charmers/mysql-router + charm: ch:mysql-router + channel: 8.0.19/edge glance-mysql-router: - charm: cs:~openstack-charmers/mysql-router + charm: ch:mysql-router + channel: 8.0.19/edge neutron-mysql-router: - charm: cs:~openstack-charmers/mysql-router + charm: ch:mysql-router + channel: 8.0.19/edge placement-mysql-router: - charm: cs:~openstack-charmers/mysql-router + charm: ch:mysql-router + channel: 8.0.19/edge vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router + charm: ch:mysql-router + channel: 8.0.19/edge mysql-innodb-cluster: - charm: cs:~openstack-charmers/mysql-innodb-cluster + charm: ch:mysql-innodb-cluster num_units: 3 options: source: *openstack-origin @@ -47,15 +55,17 @@ applications: - '0' - '1' - '2' + channel: 8.0.19/edge rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server + charm: ch:rabbitmq-server num_units: 1 options: source: *openstack-origin to: - '3' + channel: 3.8/edge neutron-api: - charm: cs:~openstack-charmers/neutron-api + charm: ch:neutron-api series: *series num_units: 1 options: @@ -68,36 +78,40 @@ applications: enable-dvr: True to: - '4' + channel: xena/edge keystone: - charm: cs:~openstack-charmers/keystone + charm: ch:keystone num_units: 1 options: openstack-origin: *openstack-origin to: - '5' + channel: xena/edge glance: - charm: cs:~openstack-charmers/glance + charm: ch:glance num_units: 1 options: openstack-origin: *openstack-origin to: - '6' + channel: xena/edge neutron-openvswitch: - charm: ../../../neutron-openvswitch + charm: ../../neutron-openvswitch.charm options: use-dvr-snat: True bridge-mappings: physnet1:br-ex enable-local-dhcp-and-metadata: True nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller + charm: ch:nova-cloud-controller num_units: 1 options: network-manager: Neutron openstack-origin: *openstack-origin to: - '7' + channel: xena/edge nova-compute: - charm: cs:~openstack-charmers/nova-compute + charm: ch:nova-compute num_units: 2 options: config-flags: default_ephemeral_format=ext4 @@ -108,34 +122,38 @@ applications: to: - '8' - '9' + channel: xena/edge placement: - charm: cs:~openstack-charmers/placement + charm: ch:placement num_units: 1 options: openstack-origin: *openstack-origin to: - '10' - vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router + channel: xena/edge vault: - charm: cs:~openstack-charmers/vault + charm: ch:vault num_units: 1 to: - '11' + channel: 1.7/edge ovn-central: - charm: cs:~openstack-charmers/ovn-central + charm: ch:ovn-central num_units: 3 options: source: *openstack-origin to: - '12' + channel: openstack-xena/edge neutron-api-plugin-ovn: - charm: cs:~openstack-charmers/neutron-api-plugin-ovn + charm: ch:neutron-api-plugin-ovn + channel: xena/edge ovn-chassis: - charm: cs:~openstack-charmers/ovn-chassis + charm: ch:ovn-chassis options: # start new units paused to allow unit by unit OVS to OVN migration new-units-paused: true + channel: openstack-xena/edge relations: - - 'neutron-api:amqp' - 'rabbitmq-server:amqp' diff --git a/tests/bundles/focal-xena-dvr-snat.yaml b/tests/bundles/focal-xena-dvr-snat.yaml index 122a969e..84d73d9a 100644 --- a/tests/bundles/focal-xena-dvr-snat.yaml +++ b/tests/bundles/focal-xena-dvr-snat.yaml @@ -1,3 +1,5 @@ +local_overlay_enabled: False + variables: openstack-origin: &openstack-origin cloud:focal-xena @@ -27,19 +29,25 @@ machines: # time, given that machine "0" comes up way before machine "7" applications: keystone-mysql-router: - charm: cs:~openstack-charmers/mysql-router + charm: ch:mysql-router + channel: 8.0.19/edge nova-mysql-router: - charm: cs:~openstack-charmers/mysql-router + charm: ch:mysql-router + channel: 8.0.19/edge glance-mysql-router: - charm: cs:~openstack-charmers/mysql-router + charm: ch:mysql-router + channel: 8.0.19/edge neutron-mysql-router: - charm: cs:~openstack-charmers/mysql-router + charm: ch:mysql-router + channel: 8.0.19/edge placement-mysql-router: - charm: cs:~openstack-charmers/mysql-router + charm: ch:mysql-router + channel: 8.0.19/edge vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router + charm: ch:mysql-router + channel: 8.0.19/edge mysql-innodb-cluster: - charm: cs:~openstack-charmers/mysql-innodb-cluster + charm: ch:mysql-innodb-cluster num_units: 3 options: source: *openstack-origin @@ -47,15 +55,17 @@ applications: - '0' - '1' - '2' + channel: 8.0.19/edge rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server + charm: ch:rabbitmq-server num_units: 1 options: source: *openstack-origin to: - '3' + channel: 3.8/edge neutron-api: - charm: cs:~openstack-charmers/neutron-api + charm: ch:neutron-api series: *series num_units: 1 options: @@ -68,36 +78,40 @@ applications: enable-dvr: True to: - '4' + channel: xena/edge keystone: - charm: cs:~openstack-charmers/keystone + charm: ch:keystone num_units: 1 options: openstack-origin: *openstack-origin to: - '5' + channel: xena/edge glance: - charm: cs:~openstack-charmers/glance + charm: ch:glance num_units: 1 options: openstack-origin: *openstack-origin to: - '6' + channel: xena/edge neutron-openvswitch: - charm: ../../../neutron-openvswitch + charm: ../../neutron-openvswitch.charm options: use-dvr-snat: True bridge-mappings: physnet1:br-ex enable-local-dhcp-and-metadata: True nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller + charm: ch:nova-cloud-controller num_units: 1 options: network-manager: Neutron openstack-origin: *openstack-origin to: - '7' + channel: xena/edge nova-compute: - charm: cs:~openstack-charmers/nova-compute + charm: ch:nova-compute num_units: 2 options: config-flags: default_ephemeral_format=ext4 @@ -108,34 +122,38 @@ applications: to: - '8' - '9' + channel: xena/edge placement: - charm: cs:~openstack-charmers/placement + charm: ch:placement num_units: 1 options: openstack-origin: *openstack-origin to: - '10' - vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router + channel: xena/edge vault: - charm: cs:~openstack-charmers/vault + charm: ch:vault num_units: 1 to: - '11' + channel: 1.7/edge ovn-central: - charm: cs:~openstack-charmers/ovn-central + charm: ch:ovn-central num_units: 3 options: source: *openstack-origin to: - '12' + channel: openstack-xena/edge neutron-api-plugin-ovn: - charm: cs:~openstack-charmers/neutron-api-plugin-ovn + charm: ch:neutron-api-plugin-ovn + channel: xena/edge ovn-chassis: - charm: cs:~openstack-charmers/ovn-chassis + charm: ch:ovn-chassis options: # start new units paused to allow unit by unit OVS to OVN migration new-units-paused: true + channel: openstack-xena/edge relations: - - 'neutron-api:amqp' - 'rabbitmq-server:amqp' diff --git a/tests/bundles/groovy-victoria-dvr-snat.yaml b/tests/bundles/groovy-victoria-dvr-snat.yaml deleted file mode 100644 index 142f304a..00000000 --- a/tests/bundles/groovy-victoria-dvr-snat.yaml +++ /dev/null @@ -1,204 +0,0 @@ -variables: - openstack-origin: &openstack-origin distro - -series: &series groovy - -machines: - 0: - constraints: "mem=3072M" - 1: - constraints: "mem=3072M" - 2: - constraints: "mem=3072M" - 3: {} - 4: {} - 5: {} - 6: {} - 7: {} - 8: - constraints: "root-disk=20G mem=4G" - 9: - constraints: "root-disk=20G mem=4G" - 10: {} - 11: {} - 12: {} - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - keystone-mysql-router: - charm: cs:~openstack-charmers/mysql-router - nova-mysql-router: - charm: cs:~openstack-charmers/mysql-router - glance-mysql-router: - charm: cs:~openstack-charmers/mysql-router - neutron-mysql-router: - charm: cs:~openstack-charmers/mysql-router - placement-mysql-router: - charm: cs:~openstack-charmers/mysql-router - vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router - mysql-innodb-cluster: - charm: cs:~openstack-charmers/mysql-innodb-cluster - num_units: 3 - options: - source: *openstack-origin - to: - - '0' - - '1' - - '2' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '3' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - manage-neutron-plugin-legacy-mode: true - overlay-network-type: 'vxlan' - l2-population: True - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - enable-dvr: True - to: - - '4' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '5' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '6' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - options: - use-dvr-snat: True - bridge-mappings: physnet1:br-ex - enable-local-dhcp-and-metadata: True - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '7' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '8' - - '9' - placement: - charm: cs:~openstack-charmers/placement - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '10' - vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router - vault: - charm: cs:~openstack-charmers/vault - num_units: 1 - to: - - '11' - ovn-central: - charm: cs:~openstack-charmers/ovn-central - num_units: 3 - options: - source: *openstack-origin - to: - - '12' - neutron-api-plugin-ovn: - charm: cs:~openstack-charmers/neutron-api-plugin-ovn - ovn-chassis: - charm: cs:~openstack-charmers/ovn-chassis - options: - # start new units paused to allow unit by unit OVS to OVN migration - new-units-paused: true -relations: - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' - - - 'placement:identity-service' - - 'keystone:identity-service' - - - 'placement:placement' - - 'nova-cloud-controller:placement' - - ["keystone:shared-db", "keystone-mysql-router:shared-db"] - - ["glance:shared-db", "glance-mysql-router:shared-db"] - - ["nova-cloud-controller:shared-db", "nova-mysql-router:shared-db"] - - ["neutron-api:shared-db", "neutron-mysql-router:shared-db"] - - ["placement:shared-db", "placement-mysql-router:shared-db"] - - ["keystone-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["nova-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["glance-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["neutron-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["placement-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - # We need to defer the addition of the neutron-api-plugin-ovn subordinate - # relation to the functional test as the test will first validate the legacy - # Neutron ML2+OVS topology, migrate it to OVN and then confirm connectivity - # post migration. - # - # - - neutron-api-plugin-ovn:neutron-plugin - # - neutron-api:neutron-plugin-api-subordinate - - - ovn-central:certificates - - vault:certificates - - - ovn-central:ovsdb-cms - - neutron-api-plugin-ovn:ovsdb-cms - - - ovn-chassis:nova-compute - - nova-compute:neutron-plugin - - - ovn-chassis:certificates - - vault:certificates - - - ovn-chassis:ovsdb - - ovn-central:ovsdb - - - vault:certificates - - neutron-api-plugin-ovn:certificates - - - vault:shared-db - - vault-mysql-router:shared-db - - - vault-mysql-router:db-router - - mysql-innodb-cluster:db-router diff --git a/tests/bundles/hirsute-wallaby-dvr-snat.yaml b/tests/bundles/hirsute-wallaby-dvr-snat.yaml deleted file mode 100644 index 026062e2..00000000 --- a/tests/bundles/hirsute-wallaby-dvr-snat.yaml +++ /dev/null @@ -1,204 +0,0 @@ -variables: - openstack-origin: &openstack-origin distro - -series: &series hirsute - -machines: - 0: - constraints: "mem=3072M" - 1: - constraints: "mem=3072M" - 2: - constraints: "mem=3072M" - 3: {} - 4: {} - 5: {} - 6: {} - 7: {} - 8: - constraints: "root-disk=20G mem=4G" - 9: - constraints: "root-disk=20G mem=4G" - 10: {} - 11: {} - 12: {} - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - keystone-mysql-router: - charm: cs:~openstack-charmers/mysql-router - nova-mysql-router: - charm: cs:~openstack-charmers/mysql-router - glance-mysql-router: - charm: cs:~openstack-charmers/mysql-router - neutron-mysql-router: - charm: cs:~openstack-charmers/mysql-router - placement-mysql-router: - charm: cs:~openstack-charmers/mysql-router - vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router - mysql-innodb-cluster: - charm: cs:~openstack-charmers/mysql-innodb-cluster - num_units: 3 - options: - source: *openstack-origin - to: - - '0' - - '1' - - '2' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '3' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - manage-neutron-plugin-legacy-mode: true - overlay-network-type: 'vxlan' - l2-population: True - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - enable-dvr: True - to: - - '4' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '5' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '6' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - options: - use-dvr-snat: True - bridge-mappings: physnet1:br-ex - enable-local-dhcp-and-metadata: True - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '7' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '8' - - '9' - placement: - charm: cs:~openstack-charmers/placement - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '10' - vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router - vault: - charm: cs:~openstack-charmers/vault - num_units: 1 - to: - - '11' - ovn-central: - charm: cs:~openstack-charmers/ovn-central - num_units: 3 - options: - source: *openstack-origin - to: - - '12' - neutron-api-plugin-ovn: - charm: cs:~openstack-charmers/neutron-api-plugin-ovn - ovn-chassis: - charm: cs:~openstack-charmers/ovn-chassis - options: - # start new units paused to allow unit by unit OVS to OVN migration - new-units-paused: true -relations: - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' - - - 'placement:identity-service' - - 'keystone:identity-service' - - - 'placement:placement' - - 'nova-cloud-controller:placement' - - ["keystone:shared-db", "keystone-mysql-router:shared-db"] - - ["glance:shared-db", "glance-mysql-router:shared-db"] - - ["nova-cloud-controller:shared-db", "nova-mysql-router:shared-db"] - - ["neutron-api:shared-db", "neutron-mysql-router:shared-db"] - - ["placement:shared-db", "placement-mysql-router:shared-db"] - - ["keystone-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["nova-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["glance-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["neutron-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["placement-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - # We need to defer the addition of the neutron-api-plugin-ovn subordinate - # relation to the functional test as the test will first validate the legacy - # Neutron ML2+OVS topology, migrate it to OVN and then confirm connectivity - # post migration. - # - # - - neutron-api-plugin-ovn:neutron-plugin - # - neutron-api:neutron-plugin-api-subordinate - - - ovn-central:certificates - - vault:certificates - - - ovn-central:ovsdb-cms - - neutron-api-plugin-ovn:ovsdb-cms - - - ovn-chassis:nova-compute - - nova-compute:neutron-plugin - - - ovn-chassis:certificates - - vault:certificates - - - ovn-chassis:ovsdb - - ovn-central:ovsdb - - - vault:certificates - - neutron-api-plugin-ovn:certificates - - - vault:shared-db - - vault-mysql-router:shared-db - - - vault-mysql-router:db-router - - mysql-innodb-cluster:db-router diff --git a/tests/bundles/impish-xena-dvr-snat.yaml b/tests/bundles/impish-xena-dvr-snat.yaml deleted file mode 100644 index 9c4f7cc8..00000000 --- a/tests/bundles/impish-xena-dvr-snat.yaml +++ /dev/null @@ -1,204 +0,0 @@ -variables: - openstack-origin: &openstack-origin distro - -series: &series impish - -machines: - 0: - constraints: "mem=3072M" - 1: - constraints: "mem=3072M" - 2: - constraints: "mem=3072M" - 3: {} - 4: {} - 5: {} - 6: {} - 7: {} - 8: - constraints: "root-disk=20G mem=4G" - 9: - constraints: "root-disk=20G mem=4G" - 10: {} - 11: {} - 12: {} - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - keystone-mysql-router: - charm: cs:~openstack-charmers/mysql-router - nova-mysql-router: - charm: cs:~openstack-charmers/mysql-router - glance-mysql-router: - charm: cs:~openstack-charmers/mysql-router - neutron-mysql-router: - charm: cs:~openstack-charmers/mysql-router - placement-mysql-router: - charm: cs:~openstack-charmers/mysql-router - vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router - mysql-innodb-cluster: - charm: cs:~openstack-charmers/mysql-innodb-cluster - num_units: 3 - options: - source: *openstack-origin - to: - - '0' - - '1' - - '2' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '3' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - manage-neutron-plugin-legacy-mode: true - overlay-network-type: 'vxlan' - l2-population: True - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - enable-dvr: True - to: - - '4' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '5' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '6' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - options: - use-dvr-snat: True - bridge-mappings: physnet1:br-ex - enable-local-dhcp-and-metadata: True - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '7' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '8' - - '9' - placement: - charm: cs:~openstack-charmers/placement - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '10' - vault-mysql-router: - charm: cs:~openstack-charmers/mysql-router - vault: - charm: cs:~openstack-charmers/vault - num_units: 1 - to: - - '11' - ovn-central: - charm: cs:~openstack-charmers/ovn-central - num_units: 3 - options: - source: *openstack-origin - to: - - '12' - neutron-api-plugin-ovn: - charm: cs:~openstack-charmers/neutron-api-plugin-ovn - ovn-chassis: - charm: cs:~openstack-charmers/ovn-chassis - options: - # start new units paused to allow unit by unit OVS to OVN migration - new-units-paused: true -relations: - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' - - - 'placement:identity-service' - - 'keystone:identity-service' - - - 'placement:placement' - - 'nova-cloud-controller:placement' - - ["keystone:shared-db", "keystone-mysql-router:shared-db"] - - ["glance:shared-db", "glance-mysql-router:shared-db"] - - ["nova-cloud-controller:shared-db", "nova-mysql-router:shared-db"] - - ["neutron-api:shared-db", "neutron-mysql-router:shared-db"] - - ["placement:shared-db", "placement-mysql-router:shared-db"] - - ["keystone-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["nova-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["glance-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["neutron-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - - ["placement-mysql-router:db-router", "mysql-innodb-cluster:db-router"] - # We need to defer the addition of the neutron-api-plugin-ovn subordinate - # relation to the functional test as the test will first validate the legacy - # Neutron ML2+OVS topology, migrate it to OVN and then confirm connectivity - # post migration. - # - # - - neutron-api-plugin-ovn:neutron-plugin - # - neutron-api:neutron-plugin-api-subordinate - - - ovn-central:certificates - - vault:certificates - - - ovn-central:ovsdb-cms - - neutron-api-plugin-ovn:ovsdb-cms - - - ovn-chassis:nova-compute - - nova-compute:neutron-plugin - - - ovn-chassis:certificates - - vault:certificates - - - ovn-chassis:ovsdb - - ovn-central:ovsdb - - - vault:certificates - - neutron-api-plugin-ovn:certificates - - - vault:shared-db - - vault-mysql-router:shared-db - - - vault-mysql-router:db-router - - mysql-innodb-cluster:db-router diff --git a/tests/bundles/trusty-mitaka.yaml b/tests/bundles/trusty-mitaka.yaml deleted file mode 100644 index f03f48cf..00000000 --- a/tests/bundles/trusty-mitaka.yaml +++ /dev/null @@ -1,133 +0,0 @@ -variables: - openstack-origin: &openstack-origin cloud:trusty-mitaka - -series: &series trusty - -machines: - 0: - constraints: "mem=3072M" - 1: {} - 2: {} - 3: {} - 4: {} - 5: {} - 6: {} - 7: - constraints: "root-disk=20G mem=4G" - 8: - constraints: "root-disk=20G mem=4G" - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - percona-cluster: - charm: cs:trusty/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - to: - - '2' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '4' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - neutron-gateway: - charm: cs:~openstack-charmers/neutron-gateway - num_units: 1 - options: - bridge-mappings: physnet1:br-ex - openstack-origin: *openstack-origin - to: - - '5' - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '6' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '7' - - '8' -relations: - - - 'neutron-api:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-gateway:neutron-plugin-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'keystone:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-gateway:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:shared-db' - - 'percona-cluster:shared-db' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:quantum-network-service' - - 'neutron-gateway:quantum-network-service' diff --git a/tests/bundles/xenial-mitaka.yaml b/tests/bundles/xenial-mitaka.yaml deleted file mode 100644 index 01f8f815..00000000 --- a/tests/bundles/xenial-mitaka.yaml +++ /dev/null @@ -1,133 +0,0 @@ -variables: - openstack-origin: &openstack-origin distro - -series: &series xenial - -machines: - 0: - constraints: "mem=3072M" - 1: {} - 2: {} - 3: {} - 4: {} - 5: {} - 6: {} - 7: - constraints: "root-disk=20G mem=4G" - 8: - constraints: "root-disk=20G mem=4G" - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - percona-cluster: - charm: cs:~openstack-charmers/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - to: - - '2' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '4' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - neutron-gateway: - charm: cs:~openstack-charmers/neutron-gateway - num_units: 1 - options: - bridge-mappings: physnet1:br-ex - openstack-origin: *openstack-origin - to: - - '5' - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '6' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '7' - - '8' -relations: - - - 'neutron-api:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-gateway:neutron-plugin-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'keystone:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-gateway:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:shared-db' - - 'percona-cluster:shared-db' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:quantum-network-service' - - 'neutron-gateway:quantum-network-service' diff --git a/tests/bundles/xenial-ocata.yaml b/tests/bundles/xenial-ocata.yaml deleted file mode 100644 index 481e786a..00000000 --- a/tests/bundles/xenial-ocata.yaml +++ /dev/null @@ -1,133 +0,0 @@ -variables: - openstack-origin: &openstack-origin cloud:xenial-ocata - -series: &series xenial - -machines: - 0: - constraints: "mem=3072M" - 1: {} - 2: {} - 3: {} - 4: {} - 5: {} - 6: {} - 7: - constraints: "root-disk=20G mem=4G" - 8: - constraints: "root-disk=20G mem=4G" - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - percona-cluster: - charm: cs:~openstack-charmers/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - to: - - '2' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '4' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - neutron-gateway: - charm: cs:~openstack-charmers/neutron-gateway - num_units: 1 - options: - bridge-mappings: physnet1:br-ex - openstack-origin: *openstack-origin - to: - - '5' - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '6' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '7' - - '8' -relations: - - - 'neutron-api:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-gateway:neutron-plugin-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'keystone:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'nova-cloud-controller:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-gateway:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:shared-db' - - 'percona-cluster:shared-db' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:quantum-network-service' - - 'neutron-gateway:quantum-network-service' diff --git a/tests/bundles/xenial-pike.yaml b/tests/bundles/xenial-pike.yaml deleted file mode 100644 index f3ad9a96..00000000 --- a/tests/bundles/xenial-pike.yaml +++ /dev/null @@ -1,133 +0,0 @@ -variables: - openstack-origin: &openstack-origin cloud:xenial-pike - -series: &series xenial - -machines: - 0: - constraints: "mem=3072M" - 1: {} - 2: {} - 3: {} - 4: {} - 5: {} - 6: {} - 7: - constraints: "root-disk=20G mem=4G" - 8: - constraints: "root-disk=20G mem=4G" - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - percona-cluster: - charm: cs:~openstack-charmers/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - to: - - '2' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '4' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - neutron-gateway: - charm: cs:~openstack-charmers/neutron-gateway - num_units: 1 - options: - bridge-mappings: physnet1:br-ex - openstack-origin: *openstack-origin - to: - - '5' - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '6' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '7' - - '8' -relations: - - - 'neutron-api:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-gateway:neutron-plugin-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'keystone:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'nova-cloud-controller:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-gateway:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:shared-db' - - 'percona-cluster:shared-db' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:quantum-network-service' - - 'neutron-gateway:quantum-network-service' diff --git a/tests/bundles/xenial-queens-dvr-snat.yaml b/tests/bundles/xenial-queens-dvr-snat.yaml deleted file mode 100644 index f732b7d9..00000000 --- a/tests/bundles/xenial-queens-dvr-snat.yaml +++ /dev/null @@ -1,125 +0,0 @@ -variables: - openstack-origin: &openstack-origin cloud:xenial-queens - -series: &series xenial - -machines: - 0: - constraints: "mem=3072M" - 1: {} - 2: {} - 3: {} - 4: {} - 5: {} - 6: - constraints: "root-disk=20G mem=4G" - 7: - constraints: "root-disk=20G mem=4G" - -# We specify machine placements for these to improve iteration -# time, given that machine "0" comes up way before machine "7" -applications: - percona-cluster: - charm: cs:~openstack-charmers/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers/neutron-api - series: *series - num_units: 1 - options: - overlay-network-type: 'vxlan' - l2-population: True - flat-network-providers: physnet1 - neutron-security-groups: true - openstack-origin: *openstack-origin - enable-dvr: True - to: - - '2' - keystone: - charm: cs:~openstack-charmers/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers/glance - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '4' - neutron-openvswitch: - charm: ../../../neutron-openvswitch - options: - use-dvr-snat: True - bridge-mappings: physnet1:br-ex - enable-local-dhcp-and-metadata: True - nova-cloud-controller: - charm: cs:~openstack-charmers/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '5' - nova-compute: - charm: cs:~openstack-charmers/nova-compute - num_units: 2 - options: - config-flags: default_ephemeral_format=ext4 - enable-live-migration: true - enable-resize: true - migration-auth-type: ssh - openstack-origin: *openstack-origin - to: - - '6' - - '7' -relations: - - - 'neutron-api:shared-db' - - 'percona-cluster:shared-db' - - - 'neutron-api:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-api:neutron-api' - - 'nova-cloud-controller:neutron-api' - - - 'neutron-api:identity-service' - - 'keystone:identity-service' - - - 'keystone:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-compute:neutron-plugin' - - 'neutron-openvswitch:neutron-plugin' - - - 'neutron-api:neutron-plugin-api' - - 'neutron-openvswitch:neutron-plugin-api' - - - 'nova-cloud-controller:shared-db' - - 'percona-cluster:shared-db' - - - 'nova-cloud-controller:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:amqp' - - 'rabbitmq-server:amqp' - - - 'neutron-openvswitch:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-cloud-controller:identity-service' - - 'keystone:identity-service' - - - 'nova-cloud-controller:cloud-compute' - - 'nova-compute:cloud-compute' - - - 'glance:identity-service' - - 'keystone:identity-service' - - - 'glance:shared-db' - - 'percona-cluster:shared-db' - - - 'glance:amqp' - - 'rabbitmq-server:amqp' - - - 'nova-compute:image-service' - - 'glance:image-service' - - - 'nova-cloud-controller:image-service' - - 'glance:image-service' diff --git a/tests/tests.yaml b/tests/tests.yaml index 33047694..cf1fd2a1 100644 --- a/tests/tests.yaml +++ b/tests/tests.yaml @@ -6,28 +6,11 @@ charm_name: neutron-openvswitch # OVS to OVN. smoke_bundles: - - migrate-ovn: focal-ussuri-dvr-snat + - migrate-ovn: focal-xena-dvr-snat gate_bundles: - - xenial-mitaka - - bionic-queens-dvr-snat - - bionic-stein-dvr-snat - - bionic-train-dvr-snat - - bionic-ussuri-dvr-snat - - migrate-ovn: focal-ussuri-dvr-snat - - migrate-ovn: focal-victoria-dvr-snat - - migrate-ovn: groovy-victoria-dvr-snat - -dev_bundles: - - trusty-mitaka - - xenial-ocata - - xenial-pike - - xenial-queens-dvr-snat - - bionic-rocky-dvr-snat - migrate-ovn: focal-wallaby-dvr-snat - migrate-ovn: focal-xena-dvr-snat - - migrate-ovn: hirstute-wallaby-dvr-snat - - migrate-ovn: impish-xena-dvr-snat configure: - zaza.openstack.charm_tests.glance.setup.add_lts_image @@ -80,6 +63,3 @@ tests_options: # reusing the instances created for the first run. This both saves time and # allows verifying instances survive a SDN migration. zaza.openstack.charm_tests.neutron.tests.NeutronNetworkingTest.test_instances_have_networking.run_resource_cleanup: false - force_deploy: - - groovy-victoria-dvr-snat - - impish-xena-dvr-snat diff --git a/tox.ini b/tox.ini index ba4fd5b6..81fd2492 100644 --- a/tox.ini +++ b/tox.ini @@ -37,10 +37,20 @@ setenv = VIRTUAL_ENV={envdir} install_command = {toxinidir}/pip.sh install {opts} {packages} commands = stestr run --slowest {posargs} -allowlist_externals = juju +allowlist_externals = + charmcraft + rename.sh passenv = HOME TERM CS_* OS_* TEST_* deps = -r{toxinidir}/test-requirements.txt +[testenv:build] +basepython = python3 +deps = -r{toxinidir}/build-requirements.txt +commands = + charmcraft clean + charmcraft -v build + {toxinidir}/rename.sh + [testenv:py35] basepython = python3.5 deps = -r{toxinidir}/requirements.txt @@ -61,6 +71,11 @@ basepython = python3.8 deps = -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt +[testenv:py39] +basepython = python3.9 +deps = -r{toxinidir}/requirements.txt + -r{toxinidir}/test-requirements.txt + [testenv:py3] basepython = python3 deps = -r{toxinidir}/requirements.txt