From dc8a0abddf44510649ce0f5f3faa9efcf22a4f25 Mon Sep 17 00:00:00 2001 From: Alex Kavanagh Date: Thu, 27 Jan 2022 15:33:27 +0000 Subject: [PATCH] Update to classic charms to build using charmcraft in CI This is for lastest/edge and yoga/edge. This update is to ensure that the Zuul Canonical CI builds the charm before functional tests and ensure that that artifact is used for the functional tests. This is to try to ensure that the charm that gets landed to the charmhub is the same charm that was tested with. Change-Id: Ia56c171397ecf9fa638405fd960593cd57b87047 Co-authored-by: Aurelien Lourot --- .gitignore | 1 + build-requirements.txt | 7 + charmcraft.yaml | 27 +++ metadata.yaml | 3 - osci.yaml | 90 ++------- rename.sh | 13 ++ tests/README.md | 2 +- 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 | 204 -------------------- tests/bundles/focal-xena-dvr-snat.yaml | 59 ++++-- tests/bundles/focal-yoga-dvr-snat.yaml | 59 ++++-- tests/bundles/hirsute-wallaby-dvr-snat.yaml | 204 -------------------- tests/bundles/impish-xena-dvr-snat.yaml | 59 ++++-- tests/bundles/jammy-yoga-dvr-snat.yaml | 59 ++++-- tests/tests.yaml | 12 +- tox.ini | 12 +- 22 files changed, 236 insertions(+), 1637 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/focal-wallaby-dvr-snat.yaml delete mode 100644 tests/bundles/hirsute-wallaby-dvr-snat.yaml diff --git a/.gitignore b/.gitignore index b5db5c04..99fe114f 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ bin tags *.sw[nop] *.pyc +*.charm .unit-state.db .pydevproject func-results.json 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/charmcraft.yaml b/charmcraft.yaml new file mode 100644 index 00000000..1974db4d --- /dev/null +++ b/charmcraft.yaml @@ -0,0 +1,27 @@ +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: + - name: ubuntu + channel: "20.04" + architectures: + - amd64 diff --git a/metadata.yaml b/metadata.yaml index bfe8fb4d..5a6b8e27 100644 --- a/metadata.yaml +++ b/metadata.yaml @@ -17,10 +17,7 @@ description: | tags: - openstack series: -- bionic - focal -- groovy -- hirsute - impish extra-bindings: data: diff --git a/osci.yaml b/osci.yaml index fcbb9f1e..45814ba2 100644 --- a/osci.yaml +++ b/osci.yaml @@ -1,103 +1,51 @@ - project: templates: - - charm-yoga-unit-jobs + - charm-unit-jobs-py38 + - charm-unit-jobs-py39 check: jobs: - - 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 tests fail on wallaby and above due to: # https://bugs.launchpad.net/charm-neutron-openvswitch/+bug/1951856 - - migrate-ovn-focal-wallaby-dvr-snat: - voting: false - - migrate-ovn-focal-xena-dvr-snat: + - migrate-ovn-focal-xena-dvr-snat + - migrate-ovn-impish-xena-dvr-snat: voting: false - migrate-ovn-focal-yoga-dvr-snat: voting: false - - migrate-ovn-hirsute-wallaby-dvr-snat: - voting: false - - migrate-ovn-impish-xena-dvr-snat: - voting: false - migrate-ovn-jammy-yoga-dvr-snat: voting: false + 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-py36 - - tox-py38 - - tox-py39 - 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 - 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: + - charm-build + - osci-lint + - tox-py38 + - tox-py39 vars: tox_extra_args: migrate-ovn:focal-xena-dvr-snat - job: name: migrate-ovn-focal-yoga-dvr-snat parent: func-target - dependencies: *smoke-jobs + dependencies: + - migrate-ovn-focal-xena-dvr-snat vars: tox_extra_args: migrate-ovn:focal-yoga-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 + dependencies: + - migrate-ovn-focal-xena-dvr-snat vars: tox_extra_args: migrate-ovn:impish-xena-dvr-snat - job: name: migrate-ovn-jammy-yoga-dvr-snat parent: func-target - dependencies: *smoke-jobs + dependencies: + - migrate-ovn-focal-xena-dvr-snat vars: tox_extra_args: migrate-ovn:jammy-yoga-dvr-snat 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/tests/README.md b/tests/README.md index 856c4f90..5c99a280 100644 --- a/tests/README.md +++ b/tests/README.md @@ -5,5 +5,5 @@ from the perspective of this charm, its requirements and its features, as exercised in a subset of the full OpenStack deployment test bundle topology. For full details on functional testing of OpenStack charms please refer to -the [functional testing](http://docs.openstack.org/developer/charm-guide/testing.html#functional-testing) +the [functional testing](https://docs.openstack.org/charm-guide/latest/reference/testing.html#functional-testing) section of the OpenStack Charm Guide. diff --git a/tests/bundles/bionic-queens-dvr-snat.yaml b/tests/bundles/bionic-queens-dvr-snat.yaml deleted file mode 100644 index de92d58d..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-next/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers-next/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-next/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers-next/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-next/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '5' - nova-compute: - charm: cs:~openstack-charmers-next/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 87b82183..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-next/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers-next/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-next/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers-next/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-next/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '5' - nova-compute: - charm: cs:~openstack-charmers-next/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 c042cc8e..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-next/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers-next/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-next/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers-next/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-next/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '5' - nova-compute: - charm: cs:~openstack-charmers-next/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 916b9eb7..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-next/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers-next/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-next/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers-next/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-next/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '5' - nova-compute: - charm: cs:~openstack-charmers-next/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-next/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 8ad171d4..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-next/percona-cluster - num_units: 1 - options: - source: *openstack-origin - to: - - '0' - rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '1' - neutron-api: - charm: cs:~openstack-charmers-next/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-next/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '3' - glance: - charm: cs:~openstack-charmers-next/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-next/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '5' - nova-compute: - charm: cs:~openstack-charmers-next/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-next/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 2577db63..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-next/mysql-router - nova-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - glance-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - neutron-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - placement-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster - num_units: 3 - options: - source: *openstack-origin - to: - - '0' - - '1' - - '2' - rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '3' - neutron-api: - charm: cs:~openstack-charmers-next/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-next/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '5' - glance: - charm: cs:~openstack-charmers-next/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-next/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '7' - nova-compute: - charm: cs:~openstack-charmers-next/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-next/placement - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '10' - vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - vault: - charm: cs:~openstack-charmers-next/vault - num_units: 1 - to: - - '11' - ovn-central: - charm: cs:~openstack-charmers-next/ovn-central - num_units: 3 - options: - source: *openstack-origin - to: - - '12' - neutron-api-plugin-ovn: - charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn - ovn-chassis: - charm: cs:~openstack-charmers-next/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 fc3f3ae9..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-next/mysql-router - nova-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - glance-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - neutron-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - placement-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster - num_units: 3 - options: - source: *openstack-origin - to: - - '0' - - '1' - - '2' - rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '3' - neutron-api: - charm: cs:~openstack-charmers-next/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-next/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '5' - glance: - charm: cs:~openstack-charmers-next/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-next/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '7' - nova-compute: - charm: cs:~openstack-charmers-next/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-next/placement - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '10' - vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - vault: - charm: cs:~openstack-charmers-next/vault - num_units: 1 - to: - - '11' - ovn-central: - charm: cs:~openstack-charmers-next/ovn-central - num_units: 3 - options: - source: *openstack-origin - to: - - '12' - neutron-api-plugin-ovn: - charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn - ovn-chassis: - charm: cs:~openstack-charmers-next/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 deleted file mode 100644 index 644fb8e6..00000000 --- a/tests/bundles/focal-wallaby-dvr-snat.yaml +++ /dev/null @@ -1,204 +0,0 @@ -variables: - openstack-origin: &openstack-origin cloud:focal-wallaby - -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-next/mysql-router - nova-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - glance-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - neutron-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - placement-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster - num_units: 3 - options: - source: *openstack-origin - to: - - '0' - - '1' - - '2' - rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '3' - neutron-api: - charm: cs:~openstack-charmers-next/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-next/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '5' - glance: - charm: cs:~openstack-charmers-next/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-next/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '7' - nova-compute: - charm: cs:~openstack-charmers-next/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-next/placement - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '10' - vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - vault: - charm: cs:~openstack-charmers-next/vault - num_units: 1 - to: - - '11' - ovn-central: - charm: cs:~openstack-charmers-next/ovn-central - num_units: 3 - options: - source: *openstack-origin - to: - - '12' - neutron-api-plugin-ovn: - charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn - ovn-chassis: - charm: cs:~openstack-charmers-next/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-xena-dvr-snat.yaml b/tests/bundles/focal-xena-dvr-snat.yaml index f6479a33..76c0f87a 100644 --- a/tests/bundles/focal-xena-dvr-snat.yaml +++ b/tests/bundles/focal-xena-dvr-snat.yaml @@ -27,19 +27,25 @@ machines: # time, given that machine "0" comes up way before machine "7" applications: keystone-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge nova-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge glance-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge neutron-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge placement-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster + charm: ch:mysql-innodb-cluster num_units: 3 options: source: *openstack-origin @@ -47,15 +53,17 @@ applications: - '0' - '1' - '2' + channel: latest/edge rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server + charm: ch:rabbitmq-server num_units: 1 options: source: *openstack-origin to: - '3' + channel: latest/edge neutron-api: - charm: cs:~openstack-charmers-next/neutron-api + charm: ch:neutron-api series: *series num_units: 1 options: @@ -68,36 +76,40 @@ applications: enable-dvr: True to: - '4' + channel: yoga/edge keystone: - charm: cs:~openstack-charmers-next/keystone + charm: ch:keystone num_units: 1 options: openstack-origin: *openstack-origin to: - '5' + channel: yoga/edge glance: - charm: cs:~openstack-charmers-next/glance + charm: ch:glance num_units: 1 options: openstack-origin: *openstack-origin to: - '6' + channel: yoga/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-next/nova-cloud-controller + charm: ch:nova-cloud-controller num_units: 1 options: network-manager: Neutron openstack-origin: *openstack-origin to: - '7' + channel: yoga/edge nova-compute: - charm: cs:~openstack-charmers-next/nova-compute + charm: ch:nova-compute num_units: 2 options: config-flags: default_ephemeral_format=ext4 @@ -108,34 +120,41 @@ applications: to: - '8' - '9' + channel: yoga/edge placement: - charm: cs:~openstack-charmers-next/placement + charm: ch:placement num_units: 1 options: openstack-origin: *openstack-origin to: - '10' + channel: yoga/edge vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge vault: - charm: cs:~openstack-charmers-next/vault + charm: ch:vault num_units: 1 to: - '11' + channel: latest/edge ovn-central: - charm: cs:~openstack-charmers-next/ovn-central + charm: ch:ovn-central num_units: 3 options: source: *openstack-origin to: - '12' + channel: latest/edge neutron-api-plugin-ovn: - charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn + charm: ch:neutron-api-plugin-ovn + channel: yoga/edge ovn-chassis: - charm: cs:~openstack-charmers-next/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: latest/edge relations: - - 'neutron-api:amqp' - 'rabbitmq-server:amqp' diff --git a/tests/bundles/focal-yoga-dvr-snat.yaml b/tests/bundles/focal-yoga-dvr-snat.yaml index b38ab7c4..c076f1e0 100644 --- a/tests/bundles/focal-yoga-dvr-snat.yaml +++ b/tests/bundles/focal-yoga-dvr-snat.yaml @@ -27,19 +27,25 @@ machines: # time, given that machine "0" comes up way before machine "7" applications: keystone-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge nova-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge glance-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge neutron-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge placement-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster + charm: ch:mysql-innodb-cluster num_units: 3 options: source: *openstack-origin @@ -47,15 +53,17 @@ applications: - '0' - '1' - '2' + channel: latest/edge rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server + charm: ch:rabbitmq-server num_units: 1 options: source: *openstack-origin to: - '3' + channel: latest/edge neutron-api: - charm: cs:~openstack-charmers-next/neutron-api + charm: ch:neutron-api series: *series num_units: 1 options: @@ -68,36 +76,40 @@ applications: enable-dvr: True to: - '4' + channel: yoga/edge keystone: - charm: cs:~openstack-charmers-next/keystone + charm: ch:keystone num_units: 1 options: openstack-origin: *openstack-origin to: - '5' + channel: yoga/edge glance: - charm: cs:~openstack-charmers-next/glance + charm: ch:glance num_units: 1 options: openstack-origin: *openstack-origin to: - '6' + channel: yoga/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-next/nova-cloud-controller + charm: ch:nova-cloud-controller num_units: 1 options: network-manager: Neutron openstack-origin: *openstack-origin to: - '7' + channel: yoga/edge nova-compute: - charm: cs:~openstack-charmers-next/nova-compute + charm: ch:nova-compute num_units: 2 options: config-flags: default_ephemeral_format=ext4 @@ -108,34 +120,41 @@ applications: to: - '8' - '9' + channel: yoga/edge placement: - charm: cs:~openstack-charmers-next/placement + charm: ch:placement num_units: 1 options: openstack-origin: *openstack-origin to: - '10' + channel: yoga/edge vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge vault: - charm: cs:~openstack-charmers-next/vault + charm: ch:vault num_units: 1 to: - '11' + channel: latest/edge ovn-central: - charm: cs:~openstack-charmers-next/ovn-central + charm: ch:ovn-central num_units: 3 options: source: *openstack-origin to: - '12' + channel: latest/edge neutron-api-plugin-ovn: - charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn + charm: ch:neutron-api-plugin-ovn + channel: yoga/edge ovn-chassis: - charm: cs:~openstack-charmers-next/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: latest/edge relations: - - 'neutron-api:amqp' - 'rabbitmq-server:amqp' diff --git a/tests/bundles/hirsute-wallaby-dvr-snat.yaml b/tests/bundles/hirsute-wallaby-dvr-snat.yaml deleted file mode 100644 index 060b7faa..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-next/mysql-router - nova-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - glance-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - neutron-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - placement-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster - num_units: 3 - options: - source: *openstack-origin - to: - - '0' - - '1' - - '2' - rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server - num_units: 1 - options: - source: *openstack-origin - to: - - '3' - neutron-api: - charm: cs:~openstack-charmers-next/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-next/keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '5' - glance: - charm: cs:~openstack-charmers-next/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-next/nova-cloud-controller - num_units: 1 - options: - network-manager: Neutron - openstack-origin: *openstack-origin - to: - - '7' - nova-compute: - charm: cs:~openstack-charmers-next/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-next/placement - num_units: 1 - options: - openstack-origin: *openstack-origin - to: - - '10' - vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router - vault: - charm: cs:~openstack-charmers-next/vault - num_units: 1 - to: - - '11' - ovn-central: - charm: cs:~openstack-charmers-next/ovn-central - num_units: 3 - options: - source: *openstack-origin - to: - - '12' - neutron-api-plugin-ovn: - charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn - ovn-chassis: - charm: cs:~openstack-charmers-next/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 index 6a625809..8ef5b3f0 100644 --- a/tests/bundles/impish-xena-dvr-snat.yaml +++ b/tests/bundles/impish-xena-dvr-snat.yaml @@ -27,19 +27,25 @@ machines: # time, given that machine "0" comes up way before machine "7" applications: keystone-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge nova-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge glance-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge neutron-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge placement-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster + charm: ch:mysql-innodb-cluster num_units: 3 options: source: *openstack-origin @@ -47,15 +53,17 @@ applications: - '0' - '1' - '2' + channel: latest/edge rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server + charm: ch:rabbitmq-server num_units: 1 options: source: *openstack-origin to: - '3' + channel: latest/edge neutron-api: - charm: cs:~openstack-charmers-next/neutron-api + charm: ch:neutron-api series: *series num_units: 1 options: @@ -68,36 +76,40 @@ applications: enable-dvr: True to: - '4' + channel: yoga/edge keystone: - charm: cs:~openstack-charmers-next/keystone + charm: ch:keystone num_units: 1 options: openstack-origin: *openstack-origin to: - '5' + channel: yoga/edge glance: - charm: cs:~openstack-charmers-next/glance + charm: ch:glance num_units: 1 options: openstack-origin: *openstack-origin to: - '6' + channel: yoga/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-next/nova-cloud-controller + charm: ch:nova-cloud-controller num_units: 1 options: network-manager: Neutron openstack-origin: *openstack-origin to: - '7' + channel: yoga/edge nova-compute: - charm: cs:~openstack-charmers-next/nova-compute + charm: ch:nova-compute num_units: 2 options: config-flags: default_ephemeral_format=ext4 @@ -108,34 +120,41 @@ applications: to: - '8' - '9' + channel: yoga/edge placement: - charm: cs:~openstack-charmers-next/placement + charm: ch:placement num_units: 1 options: openstack-origin: *openstack-origin to: - '10' + channel: yoga/edge vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge vault: - charm: cs:~openstack-charmers-next/vault + charm: ch:vault num_units: 1 to: - '11' + channel: latest/edge ovn-central: - charm: cs:~openstack-charmers-next/ovn-central + charm: ch:ovn-central num_units: 3 options: source: *openstack-origin to: - '12' + channel: latest/edge neutron-api-plugin-ovn: - charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn + charm: ch:neutron-api-plugin-ovn + channel: yoga/edge ovn-chassis: - charm: cs:~openstack-charmers-next/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: latest/edge relations: - - 'neutron-api:amqp' - 'rabbitmq-server:amqp' diff --git a/tests/bundles/jammy-yoga-dvr-snat.yaml b/tests/bundles/jammy-yoga-dvr-snat.yaml index 2b2a641d..7231ffd6 100644 --- a/tests/bundles/jammy-yoga-dvr-snat.yaml +++ b/tests/bundles/jammy-yoga-dvr-snat.yaml @@ -27,19 +27,25 @@ machines: # time, given that machine "0" comes up way before machine "7" applications: keystone-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge nova-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge glance-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge neutron-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge placement-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge mysql-innodb-cluster: - charm: cs:~openstack-charmers-next/mysql-innodb-cluster + charm: ch:mysql-innodb-cluster num_units: 3 options: source: *openstack-origin @@ -47,15 +53,17 @@ applications: - '0' - '1' - '2' + channel: latest/edge rabbitmq-server: - charm: cs:~openstack-charmers-next/rabbitmq-server + charm: ch:rabbitmq-server num_units: 1 options: source: *openstack-origin to: - '3' + channel: latest/edge neutron-api: - charm: cs:~openstack-charmers-next/neutron-api + charm: ch:neutron-api series: *series num_units: 1 options: @@ -68,36 +76,40 @@ applications: enable-dvr: True to: - '4' + channel: yoga/edge keystone: - charm: cs:~openstack-charmers-next/keystone + charm: ch:keystone num_units: 1 options: openstack-origin: *openstack-origin to: - '5' + channel: yoga/edge glance: - charm: cs:~openstack-charmers-next/glance + charm: ch:glance num_units: 1 options: openstack-origin: *openstack-origin to: - '6' + channel: yoga/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-next/nova-cloud-controller + charm: ch:nova-cloud-controller num_units: 1 options: network-manager: Neutron openstack-origin: *openstack-origin to: - '7' + channel: yoga/edge nova-compute: - charm: cs:~openstack-charmers-next/nova-compute + charm: ch:nova-compute num_units: 2 options: config-flags: default_ephemeral_format=ext4 @@ -108,34 +120,41 @@ applications: to: - '8' - '9' + channel: yoga/edge placement: - charm: cs:~openstack-charmers-next/placement + charm: ch:placement num_units: 1 options: openstack-origin: *openstack-origin to: - '10' + channel: yoga/edge vault-mysql-router: - charm: cs:~openstack-charmers-next/mysql-router + charm: ch:mysql-router + channel: latest/edge vault: - charm: cs:~openstack-charmers-next/vault + charm: ch:vault num_units: 1 to: - '11' + channel: latest/edge ovn-central: - charm: cs:~openstack-charmers-next/ovn-central + charm: ch:ovn-central num_units: 3 options: source: *openstack-origin to: - '12' + channel: latest/edge neutron-api-plugin-ovn: - charm: cs:~openstack-charmers-next/neutron-api-plugin-ovn + charm: ch:neutron-api-plugin-ovn + channel: yoga/edge ovn-chassis: - charm: cs:~openstack-charmers-next/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: latest/edge relations: - - 'neutron-api:amqp' - 'rabbitmq-server:amqp' diff --git a/tests/tests.yaml b/tests/tests.yaml index d9c7d49e..323b78e9 100644 --- a/tests/tests.yaml +++ b/tests/tests.yaml @@ -6,22 +6,13 @@ charm_name: neutron-openvswitch # OVS to OVN. smoke_bundles: - - migrate-ovn: focal-ussuri-dvr-snat + - migrate-ovn: focal-xena-dvr-snat gate_bundles: - - bionic-queens-dvr-snat - - bionic-stein-dvr-snat - - bionic-ussuri-dvr-snat - - migrate-ovn: focal-ussuri-dvr-snat - - migrate-ovn: focal-victoria-dvr-snat - - migrate-ovn: focal-wallaby-dvr-snat - migrate-ovn: focal-xena-dvr-snat - - migrate-ovn: hirsute-wallaby-dvr-snat - migrate-ovn: impish-xena-dvr-snat dev_bundles: - - bionic-rocky-dvr-snat - - bionic-train-dvr-snat - migrate-ovn: focal-yoga-dvr-snat - migrate-ovn: jammy-yoga-dvr-snat @@ -77,6 +68,5 @@ tests_options: # allows verifying instances survive a SDN migration. zaza.openstack.charm_tests.neutron.tests.NeutronNetworkingTest.test_instances_have_networking.run_resource_cleanup: false force_deploy: - - hirsute-wallaby-dvr-snat - impish-xena-dvr-snat - jammy-yoga-dvr-snat diff --git a/tox.ini b/tox.ini index 86d1e904..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