From 28bb2047f28263aec6212d0547bc4411f7a84c07 Mon Sep 17 00:00:00 2001 From: Alex Kavanagh Date: Fri, 9 Feb 2024 18:15:47 +0000 Subject: [PATCH] Updates for caracal testing support These updates, on the master branch, are to support testing the caracal packages and support of the charms for caracal. They do NOT lock the charms down, and don't change the testing branches to stable branches. Change-Id: Icff1cd3f9176ffeacc2b96338662d08b51d8553b --- build-requirements.txt | 7 ------- charmcraft.yaml | 6 ------ charmhelpers/contrib/openstack/context.py | 3 ++- charmhelpers/contrib/openstack/utils.py | 1 + charmhelpers/fetch/ubuntu.py | 10 ++++++++++ metadata.yaml | 8 +++----- tests/bundles/jammy-antelope.yaml | 6 +++--- tests/bundles/jammy-bobcat.yaml | 6 +++--- .../{mantic-bobcat.yaml => jammy-caracal.yaml} | 10 +++++----- ...{lunar-antelope.yaml => noble-caracal.yaml} | 8 ++++---- tests/tests.yaml | 18 +++++++----------- tox.ini | 18 +++++++++++++----- 12 files changed, 51 insertions(+), 50 deletions(-) delete mode 100644 build-requirements.txt rename tests/bundles/{mantic-bobcat.yaml => jammy-caracal.yaml} (92%) rename tests/bundles/{lunar-antelope.yaml => noble-caracal.yaml} (95%) diff --git a/build-requirements.txt b/build-requirements.txt deleted file mode 100644 index b6d2452..0000000 --- a/build-requirements.txt +++ /dev/null @@ -1,7 +0,0 @@ -# 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 index 62a8f5b..09f0342 100644 --- a/charmcraft.yaml +++ b/charmcraft.yaml @@ -31,9 +31,3 @@ bases: - name: ubuntu channel: "22.04" 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/charmhelpers/contrib/openstack/context.py b/charmhelpers/contrib/openstack/context.py index 42f1503..1e667fb 100644 --- a/charmhelpers/contrib/openstack/context.py +++ b/charmhelpers/contrib/openstack/context.py @@ -545,7 +545,7 @@ class IdentityServiceContext(OSContextGenerator): 'internal_auth_url': internal_auth_url, }) - # we keep all veriables in ctxt for compatibility and + # we keep all variables in ctxt for compatibility and # add nested dictionary for keystone_authtoken generic # templating if keystonemiddleware_os_release: @@ -557,6 +557,7 @@ class IdentityServiceContext(OSContextGenerator): # NOTE(jamespage) this is required for >= icehouse # so a missing value just indicates keystone needs # upgrading + ctxt['admin_user_id'] = _resolve('service_user_id') ctxt['admin_tenant_id'] = _resolve('service_tenant_id') ctxt['admin_domain_id'] = _resolve('service_domain_id') return ctxt diff --git a/charmhelpers/contrib/openstack/utils.py b/charmhelpers/contrib/openstack/utils.py index 429b09e..da711c6 100644 --- a/charmhelpers/contrib/openstack/utils.py +++ b/charmhelpers/contrib/openstack/utils.py @@ -161,6 +161,7 @@ OPENSTACK_CODENAMES = OrderedDict([ ('2022.2', 'zed'), ('2023.1', 'antelope'), ('2023.2', 'bobcat'), + ('2024.1', 'caracal'), ]) # The ugly duckling - must list releases oldest to newest diff --git a/charmhelpers/fetch/ubuntu.py b/charmhelpers/fetch/ubuntu.py index 1be992c..d0089eb 100644 --- a/charmhelpers/fetch/ubuntu.py +++ b/charmhelpers/fetch/ubuntu.py @@ -246,6 +246,14 @@ CLOUD_ARCHIVE_POCKETS = { 'bobcat/proposed': 'jammy-proposed/bobcat', 'jammy-bobcat/proposed': 'jammy-proposed/bobcat', 'jammy-proposed/bobcat': 'jammy-proposed/bobcat', + # caracal + 'caracal': 'jammy-updates/caracal', + 'jammy-caracal': 'jammy-updates/caracal', + 'jammy-caracal/updates': 'jammy-updates/caracal', + 'jammy-updates/caracal': 'jammy-updates/caracal', + 'caracal/proposed': 'jammy-proposed/caracal', + 'jammy-caracal/proposed': 'jammy-proposed/caracal', + 'jammy-proposed/caracal': 'jammy-proposed/caracal', # OVN 'focal-ovn-22.03': 'focal-updates/ovn-22.03', @@ -279,6 +287,7 @@ OPENSTACK_RELEASES = ( 'zed', 'antelope', 'bobcat', + 'caracal', ) @@ -308,6 +317,7 @@ UBUNTU_OPENSTACK_RELEASE = OrderedDict([ ('kinetic', 'zed'), ('lunar', 'antelope'), ('mantic', 'bobcat'), + ('noble', 'caracal'), ]) diff --git a/metadata.yaml b/metadata.yaml index 566beab..397ea18 100644 --- a/metadata.yaml +++ b/metadata.yaml @@ -16,12 +16,10 @@ description: | via Swift proxy services. docs: https://discourse.charmhub.io/t/swift-storage-docs-index/11104 tags: -- openstack -- file-servers + - openstack + - file-servers series: -- jammy -- lunar -- mantic + - jammy extra-bindings: replication: cluster: diff --git a/tests/bundles/jammy-antelope.yaml b/tests/bundles/jammy-antelope.yaml index 365e3b1..80e1fc2 100644 --- a/tests/bundles/jammy-antelope.yaml +++ b/tests/bundles/jammy-antelope.yaml @@ -45,7 +45,7 @@ applications: openstack-origin: *openstack-origin to: - '3' - channel: latest/edge + channel: 2024.1/edge swift-proxy: charm: ch:swift-proxy @@ -57,7 +57,7 @@ applications: openstack-origin: *openstack-origin to: - '4' - channel: latest/edge + channel: 2024.1/edge glance: expose: True @@ -67,7 +67,7 @@ applications: openstack-origin: *openstack-origin to: - '5' - channel: latest/edge + channel: 2024.1/edge swift-storage: charm: ../../swift-storage.charm diff --git a/tests/bundles/jammy-bobcat.yaml b/tests/bundles/jammy-bobcat.yaml index 933dd5b..b477871 100644 --- a/tests/bundles/jammy-bobcat.yaml +++ b/tests/bundles/jammy-bobcat.yaml @@ -45,7 +45,7 @@ applications: openstack-origin: *openstack-origin to: - '3' - channel: latest/edge + channel: 2024.1/edge swift-proxy: charm: ch:swift-proxy @@ -57,7 +57,7 @@ applications: openstack-origin: *openstack-origin to: - '4' - channel: latest/edge + channel: 2024.1/edge glance: expose: True @@ -67,7 +67,7 @@ applications: openstack-origin: *openstack-origin to: - '5' - channel: latest/edge + channel: 2024.1/edge swift-storage: charm: ../../swift-storage.charm diff --git a/tests/bundles/mantic-bobcat.yaml b/tests/bundles/jammy-caracal.yaml similarity index 92% rename from tests/bundles/mantic-bobcat.yaml rename to tests/bundles/jammy-caracal.yaml index 1ff63b8..58a32c6 100644 --- a/tests/bundles/mantic-bobcat.yaml +++ b/tests/bundles/jammy-caracal.yaml @@ -1,7 +1,7 @@ variables: - openstack-origin: &openstack-origin distro + openstack-origin: &openstack-origin cloud:jammy-caracal -series: mantic +series: jammy comment: - 'machines section to decide order of deployment. database sooner = faster' @@ -45,7 +45,7 @@ applications: openstack-origin: *openstack-origin to: - '3' - channel: latest/edge + channel: 2024.1/edge swift-proxy: charm: ch:swift-proxy @@ -57,7 +57,7 @@ applications: openstack-origin: *openstack-origin to: - '4' - channel: latest/edge + channel: 2024.1/edge glance: expose: True @@ -67,7 +67,7 @@ applications: openstack-origin: *openstack-origin to: - '5' - channel: latest/edge + channel: 2024.1/edge swift-storage: charm: ../../swift-storage.charm diff --git a/tests/bundles/lunar-antelope.yaml b/tests/bundles/noble-caracal.yaml similarity index 95% rename from tests/bundles/lunar-antelope.yaml rename to tests/bundles/noble-caracal.yaml index dc630c8..374a7a9 100644 --- a/tests/bundles/lunar-antelope.yaml +++ b/tests/bundles/noble-caracal.yaml @@ -1,7 +1,7 @@ variables: openstack-origin: &openstack-origin distro -series: lunar +series: noble comment: - 'machines section to decide order of deployment. database sooner = faster' @@ -45,7 +45,7 @@ applications: openstack-origin: *openstack-origin to: - '3' - channel: latest/edge + channel: 2024.1/edge swift-proxy: charm: ch:swift-proxy @@ -57,7 +57,7 @@ applications: openstack-origin: *openstack-origin to: - '4' - channel: latest/edge + channel: 2024.1/edge glance: expose: True @@ -67,7 +67,7 @@ applications: openstack-origin: *openstack-origin to: - '5' - channel: latest/edge + channel: 2024.1/edge swift-storage: charm: ../../swift-storage.charm diff --git a/tests/tests.yaml b/tests/tests.yaml index 1bd16a6..cd3d4aa 100644 --- a/tests/tests.yaml +++ b/tests/tests.yaml @@ -2,22 +2,18 @@ charm_name: swift-storage gate_bundles: - jammy-antelope - -smoke_bundles: - - jammy-antelope - -dev_bundles: - jammy-bobcat - - lunar-antelope - - mantic-bobcat - + - jammy-caracal +smoke_bundles: + - jammy-caracal +dev_bundles: + - noble-caracal tests: - zaza.openstack.charm_tests.swift.tests.SwiftImageCreateTest - zaza.openstack.charm_tests.swift.tests.SwiftStorageTests - swift_gr_region1: - - zaza.openstack.charm_tests.swift.tests.SwiftGlobalReplicationTests + - zaza.openstack.charm_tests.swift.tests.SwiftGlobalReplicationTests tests_options: force_deploy: - - lunar-antelope - - mantic-bobcat + - noble-caracal diff --git a/tox.ini b/tox.ini index 2cb6ca1..57c2f4e 100644 --- a/tox.ini +++ b/tox.ini @@ -32,11 +32,13 @@ passenv = CS_* OS_* TEST_* -deps = -r{toxinidir}/test-requirements.txt +deps = + -c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-2024.1.txt} + -r{toxinidir}/test-requirements.txt [testenv:build] basepython = python3 -deps = -r{toxinidir}/build-requirements.txt +deps = # charmcraft clean is done to ensure that # `tox -e build` always performs a clean, repeatable build. # For faster rebuilds during development, @@ -49,12 +51,16 @@ commands = [testenv:py310] basepython = python3.10 -deps = -r{toxinidir}/requirements.txt +deps = + -c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-2024.1.txt} + -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt [testenv:py3] basepython = python3 -deps = -r{toxinidir}/requirements.txt +deps = + -c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-2024.1.txt} + -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt [testenv:pep8] @@ -68,7 +74,9 @@ commands = flake8 {posargs} hooks unit_tests tests actions lib files # Technique based heavily upon # https://github.com/openstack/nova/blob/master/tox.ini basepython = python3 -deps = -r{toxinidir}/requirements.txt +deps = + -c {env:TEST_CONSTRAINTS_FILE:https://raw.githubusercontent.com/openstack-charmers/zaza-openstack-tests/master/constraints/constraints-2024.1.txt} + -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt setenv = {[testenv]setenv}