From adb8ed35f3718fa2caa590b6dd93ebcd75b6c191 Mon Sep 17 00:00:00 2001 From: Corey Bryant Date: Tue, 18 Jul 2023 16:47:19 -0400 Subject: [PATCH] Add 2023.2 Bobcat support * sync charm-helpers to classic charms * change openstack-origin/source default to bobcat * add mantic to metadata series * align testing with bobcat * add new bobcat bundles * add bobcat bundles to tests.yaml * add bobcat tests to osci.yaml * update build-on and run-on bases * drop kinetic * update charmcraft_channel to 2.x/stable Change-Id: I042526888114c46c8b4e2828fed0a6965428dcbf --- charmcraft.yaml | 6 +- osci.yaml | 2 +- src/config.yaml | 2 +- src/metadata.yaml | 2 +- .../{jammy-zed.yaml => jammy-bobcat.yaml} | 2 +- src/tests/bundles/mantic-bobcat.yaml | 310 ++++++++++++++++++ src/tests/tests.yaml | 8 +- 7 files changed, 322 insertions(+), 10 deletions(-) rename src/tests/bundles/{jammy-zed.yaml => jammy-bobcat.yaml} (99%) create mode 100644 src/tests/bundles/mantic-bobcat.yaml diff --git a/charmcraft.yaml b/charmcraft.yaml index 00d4019..2df13f1 100644 --- a/charmcraft.yaml +++ b/charmcraft.yaml @@ -22,9 +22,9 @@ bases: - name: ubuntu channel: "22.04" architectures: [amd64, s390x, ppc64el, arm64] - - name: ubuntu - channel: "22.10" - architectures: [amd64, s390x, ppc64el, arm64] - name: ubuntu channel: "23.04" architectures: [amd64, s390x, ppc64el, arm64] + - name: ubuntu + channel: "23.10" + architectures: [amd64, s390x, ppc64el, arm64] diff --git a/osci.yaml b/osci.yaml index 92ada18..e896cb5 100644 --- a/osci.yaml +++ b/osci.yaml @@ -6,4 +6,4 @@ needs_charm_build: true charm_build_name: nova-cell-controller build_type: charmcraft - charmcraft_channel: 2.1/stable + charmcraft_channel: 2.x/stable diff --git a/src/config.yaml b/src/config.yaml index 945c5f8..f9cdc64 100644 --- a/src/config.yaml +++ b/src/config.yaml @@ -14,7 +14,7 @@ options: Setting this to True will allow supporting services to log to syslog. openstack-origin: type: string - default: antelope + default: bobcat description: | Repository from which to install. May be one of the following: distro (default), ppa:somecustom/ppa, a deb url sources entry, diff --git a/src/metadata.yaml b/src/metadata.yaml index 7d416f5..51b0464 100644 --- a/src/metadata.yaml +++ b/src/metadata.yaml @@ -22,8 +22,8 @@ tags: - openstack series: - jammy -- kinetic - lunar +- mantic extra-bindings: public: admin: diff --git a/src/tests/bundles/jammy-zed.yaml b/src/tests/bundles/jammy-bobcat.yaml similarity index 99% rename from src/tests/bundles/jammy-zed.yaml rename to src/tests/bundles/jammy-bobcat.yaml index 0e8054c..39cbd53 100644 --- a/src/tests/bundles/jammy-zed.yaml +++ b/src/tests/bundles/jammy-bobcat.yaml @@ -1,5 +1,5 @@ variables: - openstack-origin: &openstack-origin cloud:jammy-zed + openstack-origin: &openstack-origin cloud:jammy-bobcat local_overlay_enabled: False diff --git a/src/tests/bundles/mantic-bobcat.yaml b/src/tests/bundles/mantic-bobcat.yaml new file mode 100644 index 0000000..b8f14b0 --- /dev/null +++ b/src/tests/bundles/mantic-bobcat.yaml @@ -0,0 +1,310 @@ +variables: + openstack-origin: &openstack-origin distro + +local_overlay_enabled: False + +series: mantic + +comment: + - 'machines section to decide order of deployment. database sooner = faster' + +machines: + '0': + constraints: virt-type=kvm mem=3072M + '1': + constraints: virt-type=kvm mem=3072M + '2': + constraints: virt-type=kvm mem=3072M + '3': + constraints: virt-type=kvm mem=3072M + '4': + constraints: virt-type=kvm mem=3072M + '5': + constraints: virt-type=kvm mem=3072M + '6': + '7': + '8': + '9': + '10': + '11': + '12': + constraints: mem=4096M + '13': + '14': + '15': + '16': + +applications: + + keystone-mysql-router: + charm: ch:mysql-router + channel: latest/edge + neutron-api-mysql-router: + charm: ch:mysql-router + channel: latest/edge + glance-mysql-router: + charm: ch:mysql-router + channel: latest/edge + nova-cloud-controller-mysql-router: + charm: ch:mysql-router + channel: latest/edge + nova-cell-controller-cell2-mysql-router: + charm: ch:mysql-router + options: + base-port: 3316 + channel: latest/edge + placement-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 + + mysql-innodb-cluster-cell2: + charm: ch:mysql-innodb-cluster + num_units: 3 + options: + source: *openstack-origin + to: + - '3' + - '4' + - '5' + channel: latest/edge + + glance: + charm: ch:glance + num_units: 1 + options: + openstack-origin: *openstack-origin + worker-multiplier: 0.25 + to: + - '6' + channel: latest/edge + + keystone: + charm: ch:keystone + num_units: 1 + options: + admin-password: openstack + openstack-origin: *openstack-origin + worker-multiplier: 0.25 + to: + - '7' + channel: latest/edge + + neutron-api: + charm: ch:neutron-api + num_units: 1 + options: + manage-neutron-plugin-legacy-mode: true + neutron-plugin: ovs + flat-network-providers: physnet1 + neutron-security-groups: true + openstack-origin: *openstack-origin + worker-multiplier: 0.25 + to: + - '8' + channel: latest/edge + + neutron-gateway: + charm: ch:neutron-gateway + num_units: 1 + options: + bridge-mappings: physnet1:br-ex + openstack-origin: *openstack-origin + worker-multiplier: 0.25 + to: + - '9' + channel: latest/edge + + neutron-openvswitch: + charm: ch:neutron-openvswitch + num_units: 0 + channel: latest/edge + + nova-cloud-controller: + charm: ch:nova-cloud-controller + num_units: 1 + options: + network-manager: Neutron + openstack-origin: *openstack-origin + worker-multiplier: 0.25 + debug: true + to: + - '10' + channel: latest/edge + + nova-cell-controller-cell2: + charm: ../../../nova-cell-controller.charm + num_units: 1 + options: + openstack-origin: *openstack-origin + worker-multiplier: 0.25 + debug: true + cell-name: "cell2" + to: + - '11' + + nova-compute-cell2: + charm: ch:nova-compute + num_units: 1 + storage: + ephemeral-device: '40G' + options: + enable-live-migration: true + enable-resize: true + migration-auth-type: ssh + openstack-origin: *openstack-origin + debug: true + to: + - '12' + channel: latest/edge + + rabbitmq-server-nova: + charm: ch:rabbitmq-server + num_units: 1 + to: + - '13' + channel: latest/edge + + rabbitmq-server-nova-cell2: + charm: ch:rabbitmq-server + num_units: 1 + to: + - '14' + channel: latest/edge + + rabbitmq-server-neutron: + charm: ch:rabbitmq-server + num_units: 1 + to: + - '15' + channel: latest/edge + + placement: + charm: ch:placement + num_units: 1 + options: + openstack-origin: *openstack-origin + debug: true + to: + - '16' + channel: latest/edge + +relations: + + - - 'nova-cloud-controller:nova-cell-api' + - 'nova-cell-controller-cell2:nova-cell-compute' + + - - 'nova-cloud-controller:shared-db-cell' + - 'nova-cell-controller-cell2-mysql-router:shared-db' + + - - 'nova-cloud-controller:amqp-cell' + - 'rabbitmq-server-nova-cell2:amqp' + + - - 'nova-compute-cell2:amqp' + - 'rabbitmq-server-nova-cell2:amqp' + + - - 'neutron-gateway:amqp' + - 'rabbitmq-server-neutron:amqp' + + - - 'neutron-gateway:amqp-nova' + - 'rabbitmq-server-nova:amqp' + + - - 'keystone:shared-db' + - 'keystone-mysql-router:shared-db' + - - 'keystone-mysql-router:db-router' + - 'mysql-innodb-cluster:db-router' + + - - 'nova-cloud-controller:identity-service' + - 'keystone:identity-service' + + - - 'glance:identity-service' + - 'keystone:identity-service' + + - - 'neutron-api:identity-service' + - 'keystone:identity-service' + + - - 'neutron-openvswitch:neutron-plugin-api' + - 'neutron-api:neutron-plugin-api' + + - - '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-neutron:amqp' + + - - 'neutron-gateway:neutron-plugin-api' + - 'neutron-api:neutron-plugin-api' + + - - 'glance:shared-db' + - 'glance-mysql-router:shared-db' + - - 'glance-mysql-router:db-router' + - 'mysql-innodb-cluster:db-router' + + - - 'glance:amqp' + - 'rabbitmq-server-neutron:amqp' + + - - 'nova-cloud-controller:image-service' + - 'glance:image-service' + + - - 'nova-compute-cell2:image-service' + - 'glance:image-service' + + - - 'nova-cell-controller-cell2:cloud-compute' + - 'nova-compute-cell2:cloud-compute' + + - - 'nova-cell-controller-cell2:identity-credentials' + - 'keystone:identity-credentials' + + - - 'nova-cloud-controller:amqp' + - 'rabbitmq-server-nova:amqp' + + - - 'nova-cell-controller-cell2:amqp' + - 'rabbitmq-server-nova-cell2:amqp' + + - - 'nova-cloud-controller:quantum-network-service' + - 'neutron-gateway:quantum-network-service' + + - - 'nova-compute-cell2:neutron-plugin' + - 'neutron-openvswitch:neutron-plugin' + + - - 'neutron-openvswitch:amqp' + - 'rabbitmq-server-neutron: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-cell-controller-cell2:shared-db' + - 'nova-cell-controller-cell2-mysql-router:shared-db' + - - 'nova-cell-controller-cell2-mysql-router:db-router' + - 'mysql-innodb-cluster-cell2:db-router' + + - - 'nova-cloud-controller:neutron-api' + - 'neutron-api:neutron-api' + + - - 'nova-compute-cell2:cloud-credentials' + - 'keystone:identity-credentials' + + - - 'placement:identity-service' + - 'keystone:identity-service' + + - - 'placement:shared-db' + - 'placement-mysql-router:shared-db' + - - 'placement-mysql-router:db-router' + - 'mysql-innodb-cluster:db-router' + + - - 'nova-cloud-controller:placement' + - 'placement:placement' diff --git a/src/tests/tests.yaml b/src/tests/tests.yaml index 095371d..f92e543 100644 --- a/src/tests/tests.yaml +++ b/src/tests/tests.yaml @@ -11,15 +11,17 @@ configure: - zaza.openstack.charm_tests.nova.setup.manage_ssh_key gate_bundles: - - jammy-zed + - jammy-antelope dev_bundles: - - jammy-antelope + - jammy-bobcat - lunar-antelope + - mantic-bobcat smoke_bundles: - - jammy-zed + - jammy-antelope tests_options: force_deploy: - lunar-antelope + - mantic-bobcat