From 951ed0433103d571e7e7e9ed676ce1b51819400f Mon Sep 17 00:00:00 2001 From: Myles Penner Date: Thu, 5 Sep 2024 18:38:18 +0000 Subject: [PATCH] Add charmcraft 3 support Summary of changes: - Update the charmcraft.yaml file to use base and platforms, only allowing noble support. - Update config to default to caracal. - Update osci.yaml to use the charmcraft 3.x/beta - Drop non-noble tests - Update constraints file from -2024.1.txt to -noble.txt - Add charmbuild to .zuul.yaml Change-Id: I079511e0c40aa810da353af915525a9a149edfb5 --- .zuul.yaml | 6 + charmcraft.yaml | 79 ++---- osci.yaml | 2 +- src/metadata.yaml | 2 - src/tests/bundles/jammy-antelope-ha-ovn.yaml | 234 ----------------- src/tests/bundles/jammy-antelope-ha.yaml | 232 ----------------- src/tests/bundles/mantic-bobcat-ha-ovn.yaml | 237 ------------------ src/tests/bundles/mantic-bobcat-ha.yaml | 231 ----------------- ...-ha-ovn.yaml => noble-caracal-ha-ovn.yaml} | 6 +- ...y-bobcat-ha.yaml => noble-caracal-ha.yaml} | 6 +- src/tests/tests.yaml | 16 +- tox.ini | 3 +- 12 files changed, 35 insertions(+), 1019 deletions(-) delete mode 100644 src/tests/bundles/jammy-antelope-ha-ovn.yaml delete mode 100644 src/tests/bundles/jammy-antelope-ha.yaml delete mode 100644 src/tests/bundles/mantic-bobcat-ha-ovn.yaml delete mode 100644 src/tests/bundles/mantic-bobcat-ha.yaml rename src/tests/bundles/{jammy-bobcat-ha-ovn.yaml => noble-caracal-ha-ovn.yaml} (98%) rename src/tests/bundles/{jammy-bobcat-ha.yaml => noble-caracal-ha.yaml} (98%) diff --git a/.zuul.yaml b/.zuul.yaml index fd20909e..50b4cab1 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -2,3 +2,9 @@ templates: - openstack-python3-charm-jobs - openstack-cover-jobs + + check: + jobs: + - charmbuild + vars: + charm_build_name: octavia diff --git a/charmcraft.yaml b/charmcraft.yaml index 8a74a74f..b8bb4fec 100644 --- a/charmcraft.yaml +++ b/charmcraft.yaml @@ -22,68 +22,17 @@ parts: build-environment: - CHARM_INTERFACES_DIR: $CRAFT_PROJECT_DIR/interfaces/ - CHARM_LAYERS_DIR: $CRAFT_PROJECT_DIR/layers/ -bases: - - build-on: - - name: ubuntu - channel: "22.04" - architectures: [amd64] - run-on: - - name: ubuntu - channel: "22.04" - architectures: [amd64] - - build-on: - - name: ubuntu - channel: "22.04" - architectures: [s390x] - run-on: - - name: ubuntu - channel: "22.04" - architectures: [s390x] - - build-on: - - name: ubuntu - channel: "22.04" - architectures: [ppc64el] - run-on: - - name: ubuntu - channel: "22.04" - architectures: [ppc64el] - - build-on: - - name: ubuntu - channel: "22.04" - architectures: [arm64] - run-on: - - name: ubuntu - channel: "22.04" - architectures: [arm64] - - build-on: - - name: ubuntu - channel: "23.10" - architectures: [amd64] - run-on: - - name: ubuntu - channel: "23.10" - architectures: [amd64] - - build-on: - - name: ubuntu - channel: "23.10" - architectures: [s390x] - run-on: - - name: ubuntu - channel: "23.10" - architectures: [s390x] - - build-on: - - name: ubuntu - channel: "23.10" - architectures: [ppc64el] - run-on: - - name: ubuntu - channel: "23.10" - architectures: [ppc64el] - - build-on: - - name: ubuntu - channel: "23.10" - architectures: [arm64] - run-on: - - name: ubuntu - channel: "23.10" - architectures: [arm64] +base: ubuntu@24.04 +platforms: + amd64: + build-on: amd64 + build-for: amd64 + arm64: + build-on: arm64 + build-for: arm64 + ppc64el: + build-on: ppc64el + build-for: ppc64el + s390x: + build-on: s390x + build-for: s390x diff --git a/osci.yaml b/osci.yaml index 0d9d8cfc..606b59d5 100644 --- a/osci.yaml +++ b/osci.yaml @@ -17,7 +17,7 @@ needs_charm_build: true charm_build_name: octavia build_type: charmcraft - charmcraft_channel: 2.x/candidate + charmcraft_channel: 3.x/candidate - job: name: jammy-antelope-ha diff --git a/src/metadata.yaml b/src/metadata.yaml index 756a7470..fe780e9c 100644 --- a/src/metadata.yaml +++ b/src/metadata.yaml @@ -18,8 +18,6 @@ description: | docs: https://discourse.charmhub.io/t/octavia-docs-index/11221 tags: - openstack -series: -- jammy - mantic subordinate: false provides: diff --git a/src/tests/bundles/jammy-antelope-ha-ovn.yaml b/src/tests/bundles/jammy-antelope-ha-ovn.yaml deleted file mode 100644 index c4b50b2c..00000000 --- a/src/tests/bundles/jammy-antelope-ha-ovn.yaml +++ /dev/null @@ -1,234 +0,0 @@ -variables: - openstack-origin: &openstack-origin cloud:jammy-antelope - -local_overlay_enabled: True - -series: &series jammy -relations: -- - glance:image-service - - nova-cloud-controller:image-service -- - glance:image-service - - nova-compute:image-service -- - glance-mysql-router:shared-db - - glance:shared-db -- - keystone-mysql-router:shared-db - - keystone:shared-db -- - neutron-mysql-router:shared-db - - neutron-api:shared-db -- - nova-mysql-router:shared-db - - nova-cloud-controller:shared-db -- - octavia-mysql-router:shared-db - - octavia:shared-db -- - keystone:identity-service - - glance:identity-service -- - keystone:identity-service - - nova-cloud-controller:identity-service -- - keystone:identity-service - - neutron-api:identity-service -- - keystone:identity-service - - octavia:identity-service -- - nova-compute:cloud-compute - - nova-cloud-controller:cloud-compute -- - rabbitmq-server:amqp - - neutron-api:amqp -- - rabbitmq-server:amqp - - glance:amqp -- - rabbitmq-server:amqp - - nova-cloud-controller:amqp -- - rabbitmq-server:amqp - - nova-compute:amqp -- - rabbitmq-server:amqp - - octavia:amqp -- - neutron-api:neutron-api - - nova-cloud-controller:neutron-api -- - neutron-api:neutron-load-balancer - - octavia:neutron-api -- - glance-simplestreams-sync:juju-info - - octavia-diskimage-retrofit:juju-info -- - keystone:identity-service - - glance-simplestreams-sync:identity-service -- - keystone:identity-credentials - - octavia-diskimage-retrofit:identity-credentials -- [ placement, placement-mysql-router ] -- [ placement, keystone ] -- [ placement, nova-cloud-controller ] -- - neutron-api-plugin-ovn:neutron-plugin - - neutron-api:neutron-plugin-api-subordinate -- - vault:shared-db - - vault-mysql-router:shared-db -- - ovn-central:certificates - - vault:certificates -- - ovn-central:ovsdb-cms - - neutron-api-plugin-ovn:ovsdb-cms -- - neutron-api:certificates - - vault:certificates -- - ovn-chassis:nova-compute - - nova-compute:neutron-plugin -- - ovn-chassis-octavia:ovsdb-subordinate - - octavia:ovsdb-subordinate -- - ovn-chassis-octavia:certificates - - vault:certificates -- - ovn-chassis-octavia:ovsdb - - ovn-central:ovsdb -- - ovn-central:ovsdb-cms - - octavia:ovsdb-cms -- - ovn-chassis:certificates - - vault:certificates -- - ovn-chassis:ovsdb - - ovn-central:ovsdb -- - vault:certificates - - neutron-api-plugin-ovn:certificates -- - vault:certificates - - glance:certificates -- - vault:certificates - - keystone:certificates -- - vault:certificates - - nova-cloud-controller:certificates -- - vault:certificates - - placement:certificates -- - vault:certificates - - octavia:certificates -- - vault:certificates - - glance-simplestreams-sync:certificates -- - hacluster-octavia:ha - - octavia:ha -- ["octavia-mysql-router:db-router", "mysql-innodb-cluster:db-router"] -- ["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"] -- ["vault-mysql-router:db-router", "mysql-innodb-cluster:db-router"] -applications: - glance: - charm: ch:glance - num_units: 1 - options: - openstack-origin: *openstack-origin - channel: latest/edge - keystone: - charm: ch:keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - channel: latest/edge - octavia-mysql-router: - charm: ch:mysql-router - channel: latest/edge - keystone-mysql-router: - charm: ch:mysql-router - channel: latest/edge - nova-mysql-router: - charm: ch:mysql-router - channel: latest/edge - glance-mysql-router: - charm: ch:mysql-router - channel: latest/edge - neutron-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 - mysql-innodb-cluster: - constraints: mem=3072M - charm: ch:mysql-innodb-cluster - num_units: 3 - channel: latest/edge - neutron-api: - constraints: cores=4 - charm: ch:neutron-api - num_units: 1 - options: - openstack-origin: *openstack-origin - debug: True - flat-network-providers: physnet1 - enable-ml2-port-security: True - neutron-security-groups: True - channel: latest/edge - nova-cloud-controller: - constraints: mem=7168M - charm: ch:nova-cloud-controller - num_units: 1 - options: - openstack-origin: *openstack-origin - debug: True - network-manager: Neutron - channel: latest/edge - nova-compute: - constraints: mem=7168M - charm: ch:nova-compute - num_units: 2 - options: - openstack-origin: *openstack-origin - debug: True - channel: latest/edge - hacluster-octavia: - series: *series - charm: ch:hacluster - channel: latest/edge - ovn-chassis-octavia: - series: *series - charm: ch:ovn-chassis - channel: latest/edge - octavia: - constraints: cores=8 - series: *series - charm: ../../../octavia_ubuntu-22.04-amd64.charm - num_units: 3 - options: - openstack-origin: *openstack-origin - debug: True - loadbalancer-topology: 'ACTIVE_STANDBY' - rabbitmq-server: - charm: ch:rabbitmq-server - num_units: 1 - channel: latest/edge - glance-simplestreams-sync: - charm: ch:glance-simplestreams-sync - num_units: 1 - options: - use_swift: False - mirror_list: "[{url: 'http://cloud-images.ubuntu.com/releases/', - name_prefix: 'ubuntu:released', - path: 'streams/v1/index.sjson', max: 1, - item_filters: [ - 'release~(jammy)', - 'arch~(x86_64|amd64)', - 'ftype~(disk1.img|disk.img)']}]" - channel: latest/edge - octavia-diskimage-retrofit: - charm: ch:octavia-diskimage-retrofit - options: - amp-image-tag: 'octavia-amphora' - retrofit-series: *series - retrofit-uca-pocket: antelope - channel: latest/edge - placement: - charm: ch:placement - num_units: 1 - constraints: mem=1G - options: - openstack-origin: *openstack-origin - debug: true - channel: latest/edge - neutron-api-plugin-ovn: - charm: ch:neutron-api-plugin-ovn - channel: latest/edge - ovn-central: - constraints: mem=3072M - charm: ch:ovn-central - num_units: 3 - options: - source: *openstack-origin - channel: latest/edge - ovn-chassis: - charm: ch:ovn-chassis - channel: latest/edge - vault: - charm: ch:vault - num_units: 1 - channel: latest/edge diff --git a/src/tests/bundles/jammy-antelope-ha.yaml b/src/tests/bundles/jammy-antelope-ha.yaml deleted file mode 100644 index 169c43ad..00000000 --- a/src/tests/bundles/jammy-antelope-ha.yaml +++ /dev/null @@ -1,232 +0,0 @@ -variables: - openstack-origin: &openstack-origin cloud:jammy-antelope - -local_overlay_enabled: True - -series: &series jammy -relations: -- - glance:image-service - - nova-cloud-controller:image-service -- - glance:image-service - - nova-compute:image-service -- - glance-mysql-router:shared-db - - glance:shared-db -- - keystone-mysql-router:shared-db - - keystone:shared-db -- - neutron-mysql-router:shared-db - - neutron-api:shared-db -- - nova-mysql-router:shared-db - - nova-cloud-controller:shared-db -- - octavia-mysql-router:shared-db - - octavia:shared-db -- - keystone:identity-service - - glance:identity-service -- - keystone:identity-service - - nova-cloud-controller:identity-service -- - keystone:identity-service - - neutron-api:identity-service -- - keystone:identity-service - - octavia:identity-service -- - nova-compute:cloud-compute - - nova-cloud-controller:cloud-compute -- - rabbitmq-server:amqp - - neutron-api:amqp -- - rabbitmq-server:amqp - - glance:amqp -- - rabbitmq-server:amqp - - nova-cloud-controller:amqp -- - rabbitmq-server:amqp - - nova-compute:amqp -- - rabbitmq-server:amqp - - octavia:amqp -- - neutron-api:neutron-api - - nova-cloud-controller:neutron-api -- - neutron-api:neutron-load-balancer - - octavia:neutron-api -- - rabbitmq-server:amqp - - neutron-openvswitch:amqp -- - neutron-api:neutron-plugin-api - - neutron-openvswitch:neutron-plugin-api -- - neutron-openvswitch:neutron-plugin - - nova-compute:neutron-plugin -- - rabbitmq-server:amqp - - neutron-openvswitch-octavia:amqp -- - neutron-api:neutron-plugin-api - - neutron-openvswitch-octavia:neutron-plugin-api -- - neutron-openvswitch-octavia:neutron-plugin - - octavia:neutron-openvswitch -- - hacluster-octavia:ha - - octavia:ha -- - glance-simplestreams-sync:juju-info - - octavia-diskimage-retrofit:juju-info -- - keystone:identity-service - - glance-simplestreams-sync:identity-service -- - keystone:identity-credentials - - octavia-diskimage-retrofit:identity-credentials -- [ placement, placement-mysql-router ] -- [ placement, keystone ] -- [ placement, nova-cloud-controller ] -- - vault:shared-db - - vault-mysql-router:shared-db -- - vault:certificates - - glance:certificates -- - vault:certificates - - keystone:certificates -- - vault:certificates - - neutron-api:certificates -- - vault:certificates - - nova-cloud-controller:certificates -- - vault:certificates - - octavia:certificates -- - vault:certificates - - octavia-diskimage-retrofit:certificates -- - vault:certificates - - glance-simplestreams-sync:certificates -- - vault:certificates - - placement:certificates -- ["octavia-mysql-router:db-router", "mysql-innodb-cluster:db-router"] -- ["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"] -- ["vault-mysql-router:db-router", "mysql-innodb-cluster:db-router"] -applications: - glance: - charm: ch:glance - num_units: 1 - options: - openstack-origin: *openstack-origin - channel: latest/edge - keystone: - charm: ch:keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - channel: latest/edge - octavia-mysql-router: - charm: ch:mysql-router - channel: latest/edge - keystone-mysql-router: - charm: ch:mysql-router - channel: latest/edge - nova-mysql-router: - charm: ch:mysql-router - channel: latest/edge - glance-mysql-router: - charm: ch:mysql-router - channel: latest/edge - neutron-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 - mysql-innodb-cluster: - constraints: mem=3072M - charm: ch:mysql-innodb-cluster - num_units: 3 - channel: latest/edge - neutron-api: - charm: ch:neutron-api - num_units: 1 - options: - openstack-origin: *openstack-origin - debug: True - flat-network-providers: physnet1 - enable-ml2-port-security: True - neutron-security-groups: True - enable-dvr: True - manage-neutron-plugin-legacy-mode: True - channel: latest/edge - neutron-openvswitch: - series: *series - charm: ch:neutron-openvswitch - num_units: 0 - options: - debug: True - enable-local-dhcp-and-metadata: True - use-dvr-snat: True - prevent-arp-spoofing: False - firewall-driver: openvswitch - bridge-mappings: physnet1:br-ex - channel: latest/edge - neutron-openvswitch-octavia: - series: *series - charm: ch:neutron-openvswitch - num_units: 0 - options: - debug: True - prevent-arp-spoofing: False - firewall-driver: openvswitch - channel: latest/edge - nova-cloud-controller: - constraints: mem=7168M - charm: ch:nova-cloud-controller - num_units: 1 - options: - openstack-origin: *openstack-origin - debug: True - network-manager: Neutron - channel: latest/edge - nova-compute: - constraints: mem=7168M - charm: ch:nova-compute - num_units: 2 - options: - openstack-origin: *openstack-origin - debug: True - channel: latest/edge - hacluster-octavia: - charm: ch:hacluster - num_units: 0 - channel: latest/edge - octavia: - constraints: cores=8 - series: *series - charm: ../../../octavia_ubuntu-22.04-amd64.charm - num_units: 3 - options: - openstack-origin: *openstack-origin - debug: True - loadbalancer-topology: 'ACTIVE_STANDBY' - vip: 'ADD YOUR VIP HERE' - rabbitmq-server: - charm: ch:rabbitmq-server - num_units: 1 - channel: latest/edge - glance-simplestreams-sync: - charm: ch:glance-simplestreams-sync - num_units: 1 - options: - use_swift: False - mirror_list: "[{url: 'http://cloud-images.ubuntu.com/releases/', - name_prefix: 'ubuntu:released', - path: 'streams/v1/index.sjson', max: 1, - item_filters: [ - 'release~(jammy)', - 'arch~(x86_64|amd64)', - 'ftype~(disk1.img|disk.img)']}]" - channel: latest/edge - octavia-diskimage-retrofit: - charm: ch:octavia-diskimage-retrofit - options: - amp-image-tag: 'octavia-amphora' - retrofit-series: *series - retrofit-uca-pocket: antelope - channel: latest/edge - placement: - charm: ch:placement - num_units: 1 - constraints: mem=1G - options: - openstack-origin: *openstack-origin - debug: true - channel: latest/edge - vault: - charm: ch:vault - num_units: 1 - channel: latest/edge diff --git a/src/tests/bundles/mantic-bobcat-ha-ovn.yaml b/src/tests/bundles/mantic-bobcat-ha-ovn.yaml deleted file mode 100644 index 14cc5d59..00000000 --- a/src/tests/bundles/mantic-bobcat-ha-ovn.yaml +++ /dev/null @@ -1,237 +0,0 @@ -variables: - openstack-origin: &openstack-origin distro - -local_overlay_enabled: True - -series: &series mantic -relations: -- - glance:image-service - - nova-cloud-controller:image-service -- - glance:image-service - - nova-compute:image-service -- - glance-mysql-router:shared-db - - glance:shared-db -- - keystone-mysql-router:shared-db - - keystone:shared-db -- - neutron-mysql-router:shared-db - - neutron-api:shared-db -- - nova-mysql-router:shared-db - - nova-cloud-controller:shared-db -- - octavia-mysql-router:shared-db - - octavia:shared-db -- - keystone:identity-service - - glance:identity-service -- - keystone:identity-service - - nova-cloud-controller:identity-service -- - keystone:identity-service - - neutron-api:identity-service -- - keystone:identity-service - - octavia:identity-service -- - nova-compute:cloud-compute - - nova-cloud-controller:cloud-compute -- - rabbitmq-server:amqp - - neutron-api:amqp -- - rabbitmq-server:amqp - - glance:amqp -- - rabbitmq-server:amqp - - nova-cloud-controller:amqp -- - rabbitmq-server:amqp - - nova-compute:amqp -- - rabbitmq-server:amqp - - octavia:amqp -- - neutron-api:neutron-api - - nova-cloud-controller:neutron-api -- - neutron-api:neutron-load-balancer - - octavia:neutron-api -- - glance-simplestreams-sync:juju-info - - octavia-diskimage-retrofit:juju-info -- - keystone:identity-service - - glance-simplestreams-sync:identity-service -- - keystone:identity-credentials - - octavia-diskimage-retrofit:identity-credentials -- [ placement, placement-mysql-router ] -- [ placement, keystone ] -- [ placement, nova-cloud-controller ] -- - neutron-api-plugin-ovn:neutron-plugin - - neutron-api:neutron-plugin-api-subordinate -- - vault:shared-db - - vault-mysql-router:shared-db -- - ovn-central:certificates - - vault:certificates -- - ovn-central:ovsdb-cms - - neutron-api-plugin-ovn:ovsdb-cms -- - neutron-api:certificates - - vault:certificates -- - ovn-chassis:nova-compute - - nova-compute:neutron-plugin -- - ovn-chassis-octavia:ovsdb-subordinate - - octavia:ovsdb-subordinate -- - ovn-chassis-octavia:certificates - - vault:certificates -- - ovn-chassis-octavia:ovsdb - - ovn-central:ovsdb -- - ovn-central:ovsdb-cms - - octavia:ovsdb-cms -- - ovn-chassis:certificates - - vault:certificates -- - ovn-chassis:ovsdb - - ovn-central:ovsdb -- - vault:certificates - - neutron-api-plugin-ovn:certificates -- - vault:certificates - - glance:certificates -- - vault:certificates - - keystone:certificates -- - vault:certificates - - nova-cloud-controller:certificates -- - vault:certificates - - placement:certificates -- - vault:certificates - - octavia:certificates -- - vault:certificates - - glance-simplestreams-sync:certificates -- - hacluster-octavia:ha - - octavia:ha -- ["octavia-mysql-router:db-router", "mysql-innodb-cluster:db-router"] -- ["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"] -- ["vault-mysql-router:db-router", "mysql-innodb-cluster:db-router"] -applications: - glance: - charm: ch:glance - num_units: 1 - options: - openstack-origin: *openstack-origin - channel: latest/edge - keystone: - charm: ch:keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - channel: latest/edge - octavia-mysql-router: - charm: ch:mysql-router - channel: latest/edge - keystone-mysql-router: - charm: ch:mysql-router - channel: latest/edge - nova-mysql-router: - charm: ch:mysql-router - channel: latest/edge - glance-mysql-router: - charm: ch:mysql-router - channel: latest/edge - neutron-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 - mysql-innodb-cluster: - constraints: mem=3072M - charm: ch:mysql-innodb-cluster - num_units: 3 - channel: latest/edge - neutron-api: - constraints: cores=4 - charm: ch:neutron-api - num_units: 1 - options: - openstack-origin: *openstack-origin - debug: True - flat-network-providers: physnet1 - enable-ml2-port-security: True - neutron-security-groups: True - channel: latest/edge - nova-cloud-controller: - constraints: mem=7168M - charm: ch:nova-cloud-controller - num_units: 1 - options: - openstack-origin: *openstack-origin - debug: True - network-manager: Neutron - channel: latest/edge - nova-compute: - constraints: mem=7168M - charm: ch:nova-compute - num_units: 2 - options: - openstack-origin: *openstack-origin - debug: True - channel: latest/edge - hacluster-octavia: - series: *series - charm: ch:hacluster - channel: latest/edge - ovn-chassis-octavia: - series: *series - charm: ch:ovn-chassis - channel: latest/edge - options: - ovn-source: distro - octavia: - constraints: cores=8 - series: *series - charm: ../../../octavia_ubuntu-23.10-amd64.charm - num_units: 3 - options: - openstack-origin: *openstack-origin - debug: True - loadbalancer-topology: 'ACTIVE_STANDBY' - rabbitmq-server: - charm: ch:rabbitmq-server - num_units: 1 - channel: latest/edge - glance-simplestreams-sync: - charm: ch:glance-simplestreams-sync - num_units: 1 - options: - use_swift: False - mirror_list: "[{url: 'http://cloud-images.ubuntu.com/releases/', - name_prefix: 'ubuntu:released', - path: 'streams/v1/index.sjson', max: 1, - item_filters: [ - 'release~(jammy)', - 'arch~(x86_64|amd64)', - 'ftype~(disk1.img|disk.img)']}]" - channel: latest/edge - octavia-diskimage-retrofit: - charm: ch:octavia-diskimage-retrofit - options: - amp-image-tag: 'octavia-amphora' - retrofit-series: *series - channel: latest/edge - placement: - charm: ch:placement - num_units: 1 - constraints: mem=1G - options: - openstack-origin: *openstack-origin - debug: true - channel: latest/edge - neutron-api-plugin-ovn: - charm: ch:neutron-api-plugin-ovn - channel: latest/edge - ovn-central: - constraints: mem=3072M - charm: ch:ovn-central - num_units: 3 - options: - source: *openstack-origin - channel: latest/edge - ovn-chassis: - charm: ch:ovn-chassis - channel: latest/edge - options: - ovn-source: distro - vault: - charm: ch:vault - num_units: 1 - channel: latest/edge diff --git a/src/tests/bundles/mantic-bobcat-ha.yaml b/src/tests/bundles/mantic-bobcat-ha.yaml deleted file mode 100644 index 13d529e0..00000000 --- a/src/tests/bundles/mantic-bobcat-ha.yaml +++ /dev/null @@ -1,231 +0,0 @@ -variables: - openstack-origin: &openstack-origin distro - -local_overlay_enabled: True - -series: &series mantic -relations: -- - glance:image-service - - nova-cloud-controller:image-service -- - glance:image-service - - nova-compute:image-service -- - glance-mysql-router:shared-db - - glance:shared-db -- - keystone-mysql-router:shared-db - - keystone:shared-db -- - neutron-mysql-router:shared-db - - neutron-api:shared-db -- - nova-mysql-router:shared-db - - nova-cloud-controller:shared-db -- - octavia-mysql-router:shared-db - - octavia:shared-db -- - keystone:identity-service - - glance:identity-service -- - keystone:identity-service - - nova-cloud-controller:identity-service -- - keystone:identity-service - - neutron-api:identity-service -- - keystone:identity-service - - octavia:identity-service -- - nova-compute:cloud-compute - - nova-cloud-controller:cloud-compute -- - rabbitmq-server:amqp - - neutron-api:amqp -- - rabbitmq-server:amqp - - glance:amqp -- - rabbitmq-server:amqp - - nova-cloud-controller:amqp -- - rabbitmq-server:amqp - - nova-compute:amqp -- - rabbitmq-server:amqp - - octavia:amqp -- - neutron-api:neutron-api - - nova-cloud-controller:neutron-api -- - neutron-api:neutron-load-balancer - - octavia:neutron-api -- - rabbitmq-server:amqp - - neutron-openvswitch:amqp -- - neutron-api:neutron-plugin-api - - neutron-openvswitch:neutron-plugin-api -- - neutron-openvswitch:neutron-plugin - - nova-compute:neutron-plugin -- - rabbitmq-server:amqp - - neutron-openvswitch-octavia:amqp -- - neutron-api:neutron-plugin-api - - neutron-openvswitch-octavia:neutron-plugin-api -- - neutron-openvswitch-octavia:neutron-plugin - - octavia:neutron-openvswitch -- - hacluster-octavia:ha - - octavia:ha -- - glance-simplestreams-sync:juju-info - - octavia-diskimage-retrofit:juju-info -- - keystone:identity-service - - glance-simplestreams-sync:identity-service -- - keystone:identity-credentials - - octavia-diskimage-retrofit:identity-credentials -- [ placement, placement-mysql-router ] -- [ placement, keystone ] -- [ placement, nova-cloud-controller ] -- - vault:shared-db - - vault-mysql-router:shared-db -- - vault:certificates - - glance:certificates -- - vault:certificates - - keystone:certificates -- - vault:certificates - - neutron-api:certificates -- - vault:certificates - - nova-cloud-controller:certificates -- - vault:certificates - - octavia:certificates -- - vault:certificates - - octavia-diskimage-retrofit:certificates -- - vault:certificates - - glance-simplestreams-sync:certificates -- - vault:certificates - - placement:certificates -- ["octavia-mysql-router:db-router", "mysql-innodb-cluster:db-router"] -- ["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"] -- ["vault-mysql-router:db-router", "mysql-innodb-cluster:db-router"] -applications: - glance: - charm: ch:glance - num_units: 1 - options: - openstack-origin: *openstack-origin - channel: latest/edge - keystone: - charm: ch:keystone - num_units: 1 - options: - openstack-origin: *openstack-origin - channel: latest/edge - octavia-mysql-router: - charm: ch:mysql-router - channel: latest/edge - keystone-mysql-router: - charm: ch:mysql-router - channel: latest/edge - nova-mysql-router: - charm: ch:mysql-router - channel: latest/edge - glance-mysql-router: - charm: ch:mysql-router - channel: latest/edge - neutron-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 - mysql-innodb-cluster: - constraints: mem=3072M - charm: ch:mysql-innodb-cluster - num_units: 3 - channel: latest/edge - neutron-api: - charm: ch:neutron-api - num_units: 1 - options: - openstack-origin: *openstack-origin - debug: True - flat-network-providers: physnet1 - enable-ml2-port-security: True - neutron-security-groups: True - enable-dvr: True - manage-neutron-plugin-legacy-mode: True - channel: latest/edge - neutron-openvswitch: - series: *series - charm: ch:neutron-openvswitch - num_units: 0 - options: - debug: True - enable-local-dhcp-and-metadata: True - use-dvr-snat: True - prevent-arp-spoofing: False - firewall-driver: openvswitch - bridge-mappings: physnet1:br-ex - channel: latest/edge - neutron-openvswitch-octavia: - series: *series - charm: ch:neutron-openvswitch - num_units: 0 - options: - debug: True - prevent-arp-spoofing: False - firewall-driver: openvswitch - channel: latest/edge - nova-cloud-controller: - constraints: mem=7168M - charm: ch:nova-cloud-controller - num_units: 1 - options: - openstack-origin: *openstack-origin - debug: True - network-manager: Neutron - channel: latest/edge - nova-compute: - constraints: mem=7168M - charm: ch:nova-compute - num_units: 2 - options: - openstack-origin: *openstack-origin - debug: True - channel: latest/edge - hacluster-octavia: - charm: ch:hacluster - num_units: 0 - channel: latest/edge - octavia: - constraints: cores=8 - series: *series - charm: ../../../octavia_ubuntu-23.10-amd64.charm - num_units: 3 - options: - openstack-origin: *openstack-origin - debug: True - loadbalancer-topology: 'ACTIVE_STANDBY' - vip: 'ADD YOUR VIP HERE' - rabbitmq-server: - charm: ch:rabbitmq-server - num_units: 1 - channel: latest/edge - glance-simplestreams-sync: - charm: ch:glance-simplestreams-sync - num_units: 1 - options: - use_swift: False - mirror_list: "[{url: 'http://cloud-images.ubuntu.com/releases/', - name_prefix: 'ubuntu:released', - path: 'streams/v1/index.sjson', max: 1, - item_filters: [ - 'release~(jammy)', - 'arch~(x86_64|amd64)', - 'ftype~(disk1.img|disk.img)']}]" - channel: latest/edge - octavia-diskimage-retrofit: - charm: ch:octavia-diskimage-retrofit - options: - amp-image-tag: 'octavia-amphora' - retrofit-series: *series - channel: latest/edge - placement: - charm: ch:placement - num_units: 1 - constraints: mem=1G - options: - openstack-origin: *openstack-origin - debug: true - channel: latest/edge - vault: - charm: ch:vault - num_units: 1 - channel: latest/edge diff --git a/src/tests/bundles/jammy-bobcat-ha-ovn.yaml b/src/tests/bundles/noble-caracal-ha-ovn.yaml similarity index 98% rename from src/tests/bundles/jammy-bobcat-ha-ovn.yaml rename to src/tests/bundles/noble-caracal-ha-ovn.yaml index 99ccc712..9d9b39e4 100644 --- a/src/tests/bundles/jammy-bobcat-ha-ovn.yaml +++ b/src/tests/bundles/noble-caracal-ha-ovn.yaml @@ -1,9 +1,9 @@ variables: - openstack-origin: &openstack-origin cloud:jammy-bobcat + openstack-origin: &openstack-origin cloud:noble-caracal local_overlay_enabled: True -series: &series jammy +series: &series noble relations: - - glance:image-service - nova-cloud-controller:image-service @@ -177,7 +177,7 @@ applications: octavia: constraints: cores=8 series: *series - charm: ../../../octavia_ubuntu-22.04-amd64.charm + charm: ../../../octavia.charm num_units: 3 options: openstack-origin: *openstack-origin diff --git a/src/tests/bundles/jammy-bobcat-ha.yaml b/src/tests/bundles/noble-caracal-ha.yaml similarity index 98% rename from src/tests/bundles/jammy-bobcat-ha.yaml rename to src/tests/bundles/noble-caracal-ha.yaml index f998c0a4..e876a9d9 100644 --- a/src/tests/bundles/jammy-bobcat-ha.yaml +++ b/src/tests/bundles/noble-caracal-ha.yaml @@ -1,9 +1,9 @@ variables: - openstack-origin: &openstack-origin cloud:jammy-bobcat + openstack-origin: &openstack-origin cloud:noble-caracal local_overlay_enabled: True -series: &series jammy +series: &series noble relations: - - glance:image-service - nova-cloud-controller:image-service @@ -187,7 +187,7 @@ applications: octavia: constraints: cores=8 series: *series - charm: ../../../octavia_ubuntu-22.04-amd64.charm + charm: ../../../octavia.charm num_units: 3 options: openstack-origin: *openstack-origin diff --git a/src/tests/tests.yaml b/src/tests/tests.yaml index eb32dd8d..61a331ba 100644 --- a/src/tests/tests.yaml +++ b/src/tests/tests.yaml @@ -1,18 +1,14 @@ charm_name: octavia gate_bundles: -- jammy-antelope-ha-ovn -- jammy-antelope-ha +- noble-caracal-ha smoke_bundles: -- jammy-antelope-ha +- noble-caracal-ha dev_bundles: -- jammy-bobcat-ha-ovn -- jammy-bobcat-ha -- mantic-bobcat-ha-ovn -- mantic-bobat-ha - +- noble-caracal-ha-ovn +- noble-caracal-ha comment: | The `bionic-rocky-lxd` bundle currently fails due to a bug in LXD. @@ -72,5 +68,5 @@ tests_options: policyd: service: octavia force_deploy: - - mantic-bobcat-ha-ovn - - mantic-bobcat-ha + - noble-caracal-ha-ovn + - noble-caracal-ha diff --git a/tox.ini b/tox.ini index ae5efa60..0a97862a 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 @@ -46,6 +46,7 @@ basepython = python3 commands = charmcraft clean charmcraft -v pack + {toxinidir}/rename.sh charmcraft clean [testenv:build-reactive]