We are satisfied to announce the release of: magnum 21.0.0 This release is part of the flamingo release series. The source is available from: https://opendev.org/openstack/magnum Download the package from: https://tarballs.openstack.org/magnum/ Please report issues through: https://bugs.launchpad.net/magnum/+bugs For more details, please see below. 21.0.0 ^^^^^^ New Features * This release introduces the 'credentials' endpoint to Magnum API which initially supports rotation of cluster credentials. The definition of "credential" and the implementation to perform the rotation, is dictated by the underlying driver. Changes in magnum 20.0.0..21.0.0 -------------------------------- c85b9554 Add credential API a1fa999c Drop description for ZeroMQ 062f3031 CI: Drop Heat driver and container build/publish jobs fa1c5ae6 Imported Translations from Zanata c440b198 Cluster Template flavor_id and master_flavor_id should not be mandatory. 24b36775 Address pecan deprecation warning cbeb6a89 Add insecure_registry parameter to templates API 3d7c57cb Add unit tests to improve code coverage 3c297f95 Ensure cluster template can be created with no labels 5d96148c Debug logging for periodic updates now outputs cluster UUID ecb48851 Drop Kubernetes v1.27 tests d3587f1b Migrate from wsgi scripts to module paths 0373acf5 Remove installation guide for openSUSE/SLES 89f185b1 certs: add subject key identifier extension 4e449622 Update Quickstart guide to use OS client 1a8bd81c Update master for stable/2025.1 86071c2e Drop binary dependencies for cmd2 b2aed67d Install and configure for Red Hat Enterprise Linux and CentOS - fix few mistakes d8d2016e add validation for boot volume size Diffstat (except docs and test files) ------------------------------------- .zuul.yaml | 117 --------------------- api-ref/source/clustertemplates.inc | 1 + .../source/samples/clustertemplate-create-req.json | 1 + bindep.txt | 1 - devstack/files/debs/magnum | 2 - devstack/lib/magnum | 4 +- magnum/api/attr_validator.py | 20 ++++ magnum/api/controllers/root.py | 2 +- magnum/api/controllers/v1/__init__.py | 13 ++- magnum/api/controllers/v1/cluster.py | 19 ++++ magnum/api/controllers/v1/cluster_template.py | 28 +++++ magnum/api/controllers/v1/credential.py | 65 ++++++++++++ magnum/api/controllers/v1/nodegroup.py | 21 ++++ magnum/api/controllers/versions.py | 3 +- magnum/api/rest_api_version_history.rst | 9 ++ magnum/cmd/conductor.py | 2 + magnum/common/exception.py | 5 + magnum/common/policies/__init__.py | 2 + magnum/common/policies/credential.py | 35 ++++++ magnum/common/x509/operations.py | 6 ++ magnum/conductor/api.py | 8 ++ magnum/conductor/handlers/credential_conductor.py | 58 ++++++++++ magnum/conf/services.py | 4 +- magnum/drivers/common/driver.py | 4 + magnum/service/periodic.py | 8 +- .../api/controllers/v1/test_cluster_template.py | 64 +++++++++++ .../unit/api/controllers/v1/test_credential.py | 81 ++++++++++++++ .../unit/api/controllers/v1/test_nodegroup.py | 27 +++++ magnum/{api/app.wsgi => wsgi/api.py} | 0 ...dd-boot-volume-size-check-0262c2b61abc7ccf.yaml | 5 + ...add-subject-key-identifer-ae5c6ebe86749239.yaml | 7 ++ .../notes/credential-api-be55ad07a3f2ae22.yaml | 7 ++ ...agnum-api-wsgi-entrypoint-25878b2d8b7d30b3.yaml | 9 ++ .../notes/drop-heat-ci-f4f06c73603cb678.yaml | 8 ++ .../periodic-logs-use-uuid-65b257ab9c227494.yaml | 6 ++ releasenotes/source/2025.1.rst | 6 ++ releasenotes/source/index.rst | 1 + .../locale/en_GB/LC_MESSAGES/releasenotes.po | 44 ++++---- .../source/locale/fr/LC_MESSAGES/releasenotes.po | 64 ----------- .../source/locale/ja/LC_MESSAGES/releasenotes.po | 16 +-- requirements.txt | 2 +- tox.ini | 2 +- 53 files changed, 664 insertions(+), 297 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index e52d3f7d..3b0c17d0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -10 +10 @@ alembic>=0.9.6 # MIT -cliff!=2.9.0,>=2.8.0 # Apache-2.0 +cliff>=4.0.0 # Apache-2.0