From da7487412e2bdc0869b2305de0480aa3c24bca94 Mon Sep 17 00:00:00 2001 From: Corey Bryant Date: Tue, 14 Feb 2023 21:26:01 +0000 Subject: [PATCH] Add Antelope support * sync charm-helpers to classic charms * change openstack-origin/source default to antelope * align testing with antelope * add new antelope bundles * add antelope bundles to tests.yaml * add antelope tests to osci.yaml and .zuul.yaml * update build-on and run-on bases Change-Id: Ib29779bc9f2c3cf9b37f18d96295b866f4277d8a --- .zuul.yaml | 2 +- charmcraft.yaml | 3 + osci.yaml | 2 +- src/config.yaml | 2 +- src/metadata.yaml | 1 + src/tests/bundles/jammy-antelope.yaml | 344 ++++++++++++++++++ .../{jammy-yoga.yaml => lunar-antelope.yaml} | 2 +- src/tests/tests.yaml | 9 +- tox.ini | 2 +- 9 files changed, 358 insertions(+), 9 deletions(-) create mode 100644 src/tests/bundles/jammy-antelope.yaml rename src/tests/bundles/{jammy-yoga.yaml => lunar-antelope.yaml} (99%) diff --git a/.zuul.yaml b/.zuul.yaml index 23bf5f6..fd20909 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -1,4 +1,4 @@ - project: templates: - - openstack-python3-charm-zed-jobs + - openstack-python3-charm-jobs - openstack-cover-jobs diff --git a/charmcraft.yaml b/charmcraft.yaml index 0604425..e34793a 100644 --- a/charmcraft.yaml +++ b/charmcraft.yaml @@ -23,3 +23,6 @@ bases: - name: ubuntu channel: "22.10" architectures: [amd64, s390x, ppc64el, arm64] + - name: ubuntu + channel: "23.04" + architectures: [amd64, s390x, ppc64el, arm64] diff --git a/osci.yaml b/osci.yaml index 10db021..52065a8 100644 --- a/osci.yaml +++ b/osci.yaml @@ -1,7 +1,7 @@ - project: templates: - charm-unit-jobs-py310 - - charm-zed-functional-jobs + - charm-functional-jobs vars: needs_charm_build: true charm_build_name: magnum diff --git a/src/config.yaml b/src/config.yaml index e8a1e40..ac7c571 100644 --- a/src/config.yaml +++ b/src/config.yaml @@ -1,6 +1,6 @@ options: openstack-origin: - default: zed + default: antelope type: string description: | Repository from which to install. May be one of the following: diff --git a/src/metadata.yaml b/src/metadata.yaml index d249419..632754d 100644 --- a/src/metadata.yaml +++ b/src/metadata.yaml @@ -12,6 +12,7 @@ tags: series: - jammy - kinetic +- lunar subordinate: false requires: shared-db: diff --git a/src/tests/bundles/jammy-antelope.yaml b/src/tests/bundles/jammy-antelope.yaml new file mode 100644 index 0000000..813374b --- /dev/null +++ b/src/tests/bundles/jammy-antelope.yaml @@ -0,0 +1,344 @@ +variables: + openstack-origin: &openstack-origin cloud:jammy-antelope + +local_overlay_enabled: False + +series: jammy + +comment: +- 'machines section to decide order of deployment. database sooner = faster' +machines: + '0': + constraints: mem=3072M + '1': + constraints: mem=3072M + '2': + constraints: mem=3072M + '3': + '4': + '5': + '6': + '7': + '8': + '9': + # the following machines are for nova-compute which needs more memory + # for the instances. + '10': + constraints: mem=4096M cores=4 + '11': + constraints: mem=4096M cores=4 + '12': + '13': + '14': + '15': + '16': + '17': + +applications: + + nova-cloud-controller-mysql-router: + charm: ch:mysql-router + channel: latest/edge + neutron-api-mysql-router: + charm: ch:mysql-router + channel: latest/edge + keystone-mysql-router: + charm: ch:mysql-router + channel: latest/edge + glance-mysql-router: + charm: ch:mysql-router + channel: latest/edge + placement-mysql-router: + charm: ch:mysql-router + channel: latest/edge + vault-mysql-router: + charm: ch:mysql-router + channel: latest/edge + magnum-mysql-router: + charm: ch:mysql-router + channel: latest/edge + heat-mysql-router: + charm: ch:mysql-router + channel: latest/edge + barbican-mysql-router: + charm: ch:mysql-router + channel: latest/edge + + mysql-innodb-cluster: + charm: ch:mysql-innodb-cluster + num_units: 3 + options: + source: *openstack-origin + to: + - '0' + - '1' + - '2' + channel: latest/edge + + rabbitmq-server: + charm: ch:rabbitmq-server + num_units: 1 + to: + - '3' + channel: latest/edge + + nova-cloud-controller: + charm: ch:nova-cloud-controller + num_units: 1 + options: + openstack-origin: *openstack-origin + network-manager: Neutron + to: + - '4' + channel: latest/edge + + neutron-api: + charm: ch:neutron-api + num_units: 1 + options: + manage-neutron-plugin-legacy-mode: true + neutron-plugin: ovs + openstack-origin: *openstack-origin + flat-network-providers: physnet1 + neutron-security-groups: true + to: + - '5' + channel: latest/edge + + keystone: + charm: ch:keystone + num_units: 1 + options: + openstack-origin: *openstack-origin + to: + - '6' + channel: latest/edge + + neutron-gateway: + charm: ch:neutron-gateway + num_units: 1 + options: + openstack-origin: *openstack-origin + bridge-mappings: physnet1:br-ex + to: + - '7' + channel: latest/edge + + glance: + charm: ch:glance + num_units: 1 + options: + openstack-origin: *openstack-origin + to: + - '8' + channel: latest/edge + + neutron-openvswitch: + charm: ch:neutron-openvswitch + channel: latest/edge + + placement: + charm: ch:placement + num_units: 1 + options: + openstack-origin: *openstack-origin + to: + - '9' + channel: latest/edge + + nova-compute: + charm: ch:nova-compute + num_units: 2 + storage: + ephemeral-device: '40G' + options: + openstack-origin: *openstack-origin + to: + - '10' + - '11' + channel: latest/edge + + vault: + charm: ch:vault + num_units: 1 + to: + - '12' + channel: latest/edge + + magnum: + charm: ../../../magnum.charm + num_units: 3 + options: + openstack-origin: *openstack-origin + to: + - '13' + - '14' + - '15' + + magnum-hacluster: + charm: ch:hacluster + num_units: 0 + options: + corosync_transport: unicast + cluster_count: 3 + channel: latest/edge + + heat: + charm: ch:heat + num_units: 1 + options: + openstack-origin: *openstack-origin + to: + - '16' + channel: latest/edge + + barbican: + charm: ch:barbican + num_units: 1 + options: + openstack-origin: *openstack-origin + to: + - '17' + channel: latest/edge + +relations: + + - - 'nova-compute:image-service' + - 'glance:image-service' + + - - 'nova-compute:amqp' + - 'rabbitmq-server:amqp' + + - - 'nova-cloud-controller:shared-db' + - 'nova-cloud-controller-mysql-router:shared-db' + - - 'nova-cloud-controller-mysql-router:db-router' + - 'mysql-innodb-cluster:db-router' + + - - 'nova-cloud-controller:identity-service' + - 'keystone:identity-service' + + - - 'nova-cloud-controller:amqp' + - 'rabbitmq-server:amqp' + + - - 'nova-cloud-controller:cloud-compute' + - 'nova-compute:cloud-compute' + + - - 'nova-cloud-controller:image-service' + - 'glance:image-service' + + - - 'keystone:shared-db' + - 'keystone-mysql-router:shared-db' + - - 'keystone-mysql-router:db-router' + - 'mysql-innodb-cluster:db-router' + - - 'glance:identity-service' + - 'keystone:identity-service' + + - - 'glance:shared-db' + - 'glance-mysql-router:shared-db' + - - 'glance-mysql-router:db-router' + - 'mysql-innodb-cluster:db-router' + + - - 'glance:amqp' + - 'rabbitmq-server:amqp' + + - - 'neutron-gateway:amqp' + - 'rabbitmq-server:amqp' + + - - 'nova-cloud-controller:quantum-network-service' + - 'neutron-gateway:quantum-network-service' + + - - 'neutron-api:shared-db' + - 'neutron-api-mysql-router:shared-db' + - - 'neutron-api-mysql-router:db-router' + - 'mysql-innodb-cluster:db-router' + + - - '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' + + - - 'rabbitmq-server:amqp' + - 'neutron-openvswitch:amqp' + + - - 'placement:shared-db' + - 'placement-mysql-router:shared-db' + - - 'placement-mysql-router:db-router' + - 'mysql-innodb-cluster:db-router' + + - - 'placement:identity-service' + - 'keystone:identity-service' + + - - 'placement:placement' + - 'nova-cloud-controller:placement' + + - - 'vault:shared-db' + - 'vault-mysql-router:shared-db' + - - 'vault-mysql-router:db-router' + - 'mysql-innodb-cluster:db-router' + + - - 'vault:certificates' + - 'neutron-api:certificates' + + - - 'vault:certificates' + - 'glance:certificates' + + - - 'vault:certificates' + - 'keystone:certificates' + + - - 'vault:certificates' + - 'nova-cloud-controller:certificates' + + - - 'vault:certificates' + - 'placement:certificates' + + - - 'magnum:shared-db' + - 'magnum-mysql-router:shared-db' + - - 'magnum-mysql-router:db-router' + - 'mysql-innodb-cluster:db-router' + + - - 'magnum:amqp' + - 'rabbitmq-server:amqp' + + - - 'magnum:identity-service' + - 'keystone:identity-service' + + - - 'magnum:certificates' + - 'vault:certificates' + + - - 'magnum:ha' + - 'magnum-hacluster:ha' + + - - 'heat:amqp' + - 'rabbitmq-server:amqp' + + - - 'heat:identity-service' + - 'keystone:identity-service' + + - - 'heat:shared-db' + - 'heat-mysql-router:shared-db' + - - 'heat-mysql-router:db-router' + - 'mysql-innodb-cluster:db-router' + + - - 'heat:certificates' + - 'vault:certificates' + + - - 'barbican:amqp' + - 'rabbitmq-server:amqp' + + - - 'barbican:identity-service' + - 'keystone:identity-service' + + - - 'barbican:shared-db' + - 'barbican-mysql-router:shared-db' + - - 'barbican-mysql-router:db-router' + - 'mysql-innodb-cluster:db-router' + + - - 'barbican:certificates' + - 'vault:certificates' diff --git a/src/tests/bundles/jammy-yoga.yaml b/src/tests/bundles/lunar-antelope.yaml similarity index 99% rename from src/tests/bundles/jammy-yoga.yaml rename to src/tests/bundles/lunar-antelope.yaml index fedfa09..a899951 100644 --- a/src/tests/bundles/jammy-yoga.yaml +++ b/src/tests/bundles/lunar-antelope.yaml @@ -3,7 +3,7 @@ variables: local_overlay_enabled: False -series: jammy +series: lunar comment: - 'machines section to decide order of deployment. database sooner = faster' diff --git a/src/tests/tests.yaml b/src/tests/tests.yaml index eaecc87..6f72e7d 100644 --- a/src/tests/tests.yaml +++ b/src/tests/tests.yaml @@ -1,15 +1,15 @@ charm_name: magnum smoke_bundles: -- jammy-yoga +- jammy-zed gate_bundles: -- jammy-yoga +- jammy-zed dev_bundles: -- jammy-yoga -- jammy-zed +- jammy-antelope - kinetic-zed +- lunar-antelope configure: - zaza.openstack.charm_tests.vault.setup.auto_initialize @@ -38,3 +38,4 @@ target_deploy_status: tests_options: force_deploy: - kinetic-zed + - lunar-antelope diff --git a/tox.ini b/tox.ini index 854d8be..c11375e 100644 --- a/tox.ini +++ b/tox.ini @@ -33,7 +33,7 @@ allowlist_externals = charmcraft bash tox - rename.sh + {toxinidir}/rename.sh deps = -r{toxinidir}/requirements.txt