We are overjoyed to announce the release of: cinder 26.0.0 This release is part of the epoxy release series. The source is available from: https://opendev.org/openstack/cinder Download the package from: https://tarballs.openstack.org/cinder/ Please report issues through: https://bugs.launchpad.net/cinder/+bugs For more details, please see below. 26.0.0 ^^^^^^ New Features ************ * Cinder now supports setting-up cgroups with the cgroups v2 API, which is used when doing migration of block device with the LVM backend. Bug Fixes ********* * RBD driver bug #2092534 (https://bugs.launchpad.net/cinder/+bug/2092534): Fixed uploading a volume to image when image has different format than volume. * Bug #2062539 (https://bugs.launchpad.net/cinder/+bug/2062539): Fixed reimage operation when the image is backed by a volume snapshot. * Pure Storage bug #2101859 (https://bugs.launchpad.net/cinder/+bug/2101859): Fixed issue where LACP bonds were not been correctly identified as iSCSI and NVMe targets. * Bug #1886543 (https://bugs.launchpad.net/cinder/+bug/1886543): On retypes requiring a migration, try to use the driver assisted mechanism when moving from one backend to another when we know it's safe from the volume type perspective. Changes in cinder 25.0.0.0rc1..26.0.0 ------------------------------------- 4acf0a3b6 Driver assisted migration on retype when it's safe d5da037e6 [Pure Storage] Fix issue with LACP ports not being identified 25a297012 Fix reimage with snapshot backed image bb8ad77e6 RBD: Fix upload volume with different format 3074be4c3 Implements cgroupsv2 6d33ff2ca Update TOX_CONSTRAINTS_FILE for stable/2025.1 061f1758b Update .gitreview for stable/2025.1 cd3a12006 [Pure Storage] Add volume group support 3ba32779c Revert "[Pure Storage] Fix QoS setting for cloned volumes" 86fedcb59 [Pure Storage] Remove SafeMode PGs from Replication Pods 7e42fdb73 Deprecate iser_opts c94360a50 Add libpcre3-dev in bindep.txt for pcre.h 244e0a646 Dell PowerMax: Add PowerMax Laurel Release support f2b4970ce [NetApp] Fix latent issues in unit tests 9c26885e9 [NetApp] Certificate based authentication for NetApp drivers 47908f9f4 [Pure Storage] Fix QoS setting for cloned volumes 2155d6815 Dell PowerMax: Enhanced the retry mechanism to verify the active snapshots. 3e2184584 [NetApp] Sync mirror support for NetApp Backends c05d12875 Dell PowerMax: Added exception handling after the masking view REST call. f0562c9bb [Pure Storage] Manage Volume from GUI fails c8b770b7c Update the documentation regarding Lightbits' multi-tenancy functionality acba81dd9 lightbits: doc's "retype" support 9c5351906 Dell PowerMax: Add PowerMax Laurel Release support 6adc73299 Fujitsu Driver: Improve CLI function 76a710a2a docs: add supported db info 059da54ec Dell PowerFlex: Add the 4.x support in document 46621c639 HPE 3par: Add comment for cloned volumes f988ac313 mypy: Support mypy 1.15.0 f6d25c93a lightbits: add qos support fff98b182 Rally: Fix usage of cinderv3 service name 89a7a3bf5 StorPool: Use os-brick instead of packages `storpool` and `storpool.spopenstack` 792462cad HPE 3par: Update the calculation of free_capacity 12d91a893 Updating the Lightbits Cinder driver documentation regarding renaming. eb436ffc3 Remove trailing white space in release note d082b67d9 HPE 3par - Fix retype volume c67b26e29 Imported Translations from Zanata 92a4682d4 [docs] Update REST API version history f1f64d9e7 HPE 3par: getWsApiVersion login/logout 0d2a27e2f Imported Translations from Zanata e953beffb HPE 3par iSCSI: getWsApiVersion now requires login 0c3c7b7bb Add 'enforce_multipath' in connection_properties 56abc9d5b NFS update volume attachment format during volume snapshot febe34fa6 Dell PowerMax: multi detach req caused race conditions 31ae9e628 [Pure Storge] Ensure correct provisioned space value is used d9e31ee70 test_storpool.py: Assume volumes have a volume type d7f532ee3 [Pure Storage] Enhance reported performance characteristics c81135cf0 Remove default override for config options policy_file c60d28d02 reno: Update master for unmaintained/2023.1 0f4c0c7a1 Remove unused httplib2 05f6b708a Nimble: Report max_oversubscription_ratio via backend capabilities 06c3e1aca Hitachi and OEM: masking REST API token on log b4dda3222 Huawei hypermetro: RECOVERYPOLICY typo c65f43cb9 Fix "signature_verified" metadata propagation to images c42f04661 Always upload image volumes in a native thread cf3205ecf Fix a typo for assert_called_with c44ce8be0 Pin upper version of mypy e1c813115 Tests: Fix double mocking in test_rbd d3807bb59 mypy: Print mypy version used b88b62203 Imported Translations from Zanata dfb233b06 fix: typo in pure driver cd7a4da7a Tests: Fix type error in volume encryption unit tests d1286e38a Update gate jobs as per the 2025.1 cycle testing runtime be4e08c62 datacore: Mock is_valid_ipv6 to fix unit tests with netaddr >= 1.0.0 23660015d HPE 3PAR: Add HPE Alletra MP related information a820cd461 Fix mypy errors 8c5b35a1a tox: Drop envdir 005be05ec Tests: Skip multiprocess test when using 1 cpu 5566f9a43 StorPool: DRY volumeCreate() in create_volume() c7a3db246 Hitachi: Support matrix fix fbf489976 Make volume Glance metadata bulk update idempotent 6fe594943 Pure Storage - bump version numbers for 2025.1 (Epoxy) bce0f2639 Hitachi: fix to initialize a lock counter e57c350d0 nit: Add FIXME to image volume cache c76680a68 Imported Translations from Zanata 60853b8c2 Update master for stable/2024.2 c97de3770 Tests: Clean up RBD image unit tests edeac132a Add cinder-manage command to update service_uuid 6a428b32c Support hacking 7.0.0 8f78b2278 Mock get_all_classes in setUp() 09cad4be6 Remove hard coded class in FakeFilterScheduler a73d7fcf1 Use FakeHostManager for scheduler tests 1d011ca2a Use FakeHostManager for weigher tests b37e341e6 Enhance FakeHostManager class 42524adcc Do not call get_all_classes to get all classes 7f49b41ee RBD: Fix handling of RBD errors in get_manageable_volumes 7ee7ac589 Stop testing old release of cinder 3057445fc Remove psutil requirement 50eb89ccd Add wsgi module 7dae0e5bd Remove fallback for Python 2 03cbcd3cd Ceph: Add option to keep only last n snapshots per backup Diffstat (except docs and test files) ------------------------------------- .gitreview | 1 + .zuul.yaml | 13 + bindep.txt | 1 + cinder/api/contrib/volume_actions.py | 42 +- cinder/api/openstack/rest_api_version_history.rst | 8 +- cinder/api/urlmap.py | 5 +- cinder/backup/drivers/ceph.py | 125 +- cinder/backup/manager.py | 7 +- cinder/cmd/manage.py | 10 + cinder/common/config.py | 4 +- cinder/db/api.py | 5 + cinder/db/sqlalchemy/api.py | 32 + cinder/image/cache.py | 5 + cinder/image/image_utils.py | 17 +- cinder/message/message_field.py | 3 + cinder/opts.py | 2 + cinder/policy.py | 3 - cinder/privsep/cgroup.py | 24 +- cinder/service.py | 4 + .../unit/attachments/test_attachments_manager.py | 15 +- .../unit/backup/drivers/test_backup_google.py | 3 +- .../volume/drivers/datacore/test_datacore_api.py | 8 + .../dell_emc/powermax/test_powermax_common.py | 31 + .../dell_emc/powermax/test_powermax_rest.py | 15 +- .../unit/volume/drivers/ibm/test_storwize_svc.py | 2 +- .../volume/drivers/lightos/test_lightos_storage.py | 15 +- .../drivers/netapp/dataontap/client/fakes.py | 2 + .../drivers/netapp/dataontap/client/test_api.py | 80 +- .../netapp/dataontap/client/test_client_base.py | 7 +- .../netapp/dataontap/client/test_client_cmode.py | 10 +- .../dataontap/client/test_client_cmode_rest.py | 112 +- .../drivers/netapp/dataontap/test_block_base.py | 9 +- .../drivers/netapp/dataontap/test_block_cmode.py | 45 + .../volume/drivers/netapp/dataontap/utils/fakes.py | 1 + .../netapp/dataontap/utils/test_data_motion.py | 324 +++- .../drivers/netapp/dataontap/utils/test_utils.py | 32 +- cinder/volume/api.py | 17 +- cinder/volume/driver.py | 29 +- cinder/volume/drivers/dell_emc/powermax/common.py | 2 +- cinder/volume/drivers/dell_emc/powermax/fc.py | 9 + cinder/volume/drivers/dell_emc/powermax/iscsi.py | 9 + cinder/volume/drivers/dell_emc/powermax/rest.py | 44 +- .../volume/drivers/fujitsu/eternus_dx/constants.py | 1821 ++++++++++++++++++++ .../drivers/fujitsu/eternus_dx/eternus_dx_cli.py | 79 +- .../fujitsu/eternus_dx/eternus_dx_common.py | 192 +-- cinder/volume/drivers/hitachi/hbsd_rest_api.py | 9 +- cinder/volume/drivers/hpe/hpe_3par_common.py | 101 +- cinder/volume/drivers/hpe/hpe_3par_iscsi.py | 4 +- cinder/volume/drivers/hpe/nimble.py | 7 +- cinder/volume/drivers/huawei/hypermetro.py | 2 +- cinder/volume/drivers/lightos.py | 24 +- .../volume/drivers/netapp/dataontap/block_base.py | 84 +- .../volume/drivers/netapp/dataontap/block_cmode.py | 17 +- .../volume/drivers/netapp/dataontap/client/api.py | 82 +- .../drivers/netapp/dataontap/client/client_base.py | 38 +- .../netapp/dataontap/client/client_cmode.py | 2 + .../netapp/dataontap/client/client_cmode_rest.py | 99 +- cinder/volume/drivers/netapp/dataontap/nfs_base.py | 18 +- .../drivers/netapp/dataontap/nvme_library.py | 16 +- .../drivers/netapp/dataontap/utils/data_motion.py | 262 ++- .../volume/drivers/netapp/dataontap/utils/utils.py | 12 +- cinder/volume/drivers/netapp/options.py | 85 +- cinder/volume/drivers/nfs.py | 10 +- cinder/volume/drivers/pure.py | 642 ++++++- cinder/volume/drivers/quobyte.py | 9 +- cinder/volume/drivers/rbd.py | 52 +- cinder/volume/drivers/remotefs.py | 9 + cinder/volume/drivers/storpool.py | 202 +-- cinder/volume/flows/api/create_volume.py | 5 +- cinder/volume/flows/manager/create_volume.py | 7 +- cinder/volume/manager.py | 73 +- cinder/volume/rpcapi.py | 14 +- cinder/volume/volume_types.py | 4 +- cinder/volume/volume_utils.py | 2 +- cinder/wsgi/api.py | 24 + .../block-storage/backup/ceph-backup-driver.rst | 21 + .../drivers/dell-emc-powerflex-driver.rst | 8 +- .../drivers/dell-emc-powermax-driver.rst | 12 + .../drivers/fujitsu-eternus-dx-driver.rst | 22 + .../block-storage/drivers/hpe-3par-driver.rst | 78 +- .../drivers/lightbits-lightos-driver.rst | 59 +- .../block-storage/drivers/pure-storage-driver.rst | 22 +- .../drivers/storpool-volume-driver.rst | 8 - .../manual/cinder-pure_storage_extraspecs.inc | 16 + driver-requirements.txt | 3 + rally-jobs/cinder.yaml | 44 +- .../add-cinder-wsgi-module-ae72ad42bfebbea8.yaml | 22 + ...ach-format-after-snapshot-9a1857456706aa72.yaml | 7 + .../notes/bug-1823445-c47c25870a98335a.yaml | 10 + ...wermax-rest-api-hostlunid-ee22d0105c990ea0.yaml | 8 + ...rmax-fix-multi-detach-req-eb0f189841689ce8.yaml | 8 + ...ailed-fix-active-snapshot-ccc3f9b6251d2634.yaml | 12 + ...eep-only-last-n-snapshots-89dc532656f453f4.yaml | 8 + ...cation-for-netapp-drivers-b06a62df620aebc3.yaml | 9 + releasenotes/notes/cgroupsv2-75476a8e1ea88b5f.yaml | 5 + .../deprecate-iser-opts-b0af9a68b7b8578c.yaml | 11 + ...ix-rbd-upload-diff-format-38fc4ef24d7145ba.yaml | 7 + .../fix-reimage-image-snap-15ecd5fce9973d5d.yaml | 5 + ...itsu-improve-cli-function-6cabf36ffc6d44d6.yaml | 40 + .../hitachi-fix-output-token-c9eb15423e05c5b9.yaml | 14 + .../notes/hitachi-fix-unlock-f4e044807985e60b.yaml | 6 + ...-3par-add-alletra-mp-info-3ed7f5160bf58dbe.yaml | 7 + ...r-calculate-free-capacity-926b60b70bba18b7.yaml | 6 + ...comment-for-cloned-volume-ef16dccf7639452b.yaml | 7 + ...hpe-3par-retype-thin-deco-2263063d847db454.yaml | 5 + ...dempotent-glance-metadata-aa78e09736cf57d9.yaml | 6 + .../lightbits-qos-support-1a44a9fcdfd1ee93.yaml | 16 + ...ax-oversubscription-ratio-1d9812954f824fcf.yaml | 5 + .../notes/pure-cinder-manage-aa40d62bf2bd0d33.yaml | 6 + .../pure-storage-driver-typo-a24d19021f25a4f8.yaml | 5 + .../pure_evergreen_one_model-0533b91fb096c468.yaml | 7 + .../notes/pure_lacp_iscsi-34678bdb98fa6bab.yaml | 7 + .../notes/pure_pod_safemode-d64b0705828529e5.yaml | 6 + ...re_storage_scheduler_data-9b28bb309b17e8aa.yaml | 13 + ...pure_volume_group_support-303a4585277b4e1f.yaml | 8 + .../quobyte-extra-requires-8dc1761859da923a.yaml | 9 + ...65713-driver-exc-handling-f8de823cd9acd767.yaml | 7 + ...retype-assisted-migration-6cdc7f9b21beb859.yaml | 7 + ...i-and-config-code-in-tree-92cfe30690b78ef1.yaml | 8 + ...pport-for-netapp-backends-3cece6d56fec332c.yaml | 8 + .../update-service-uuid-f25dbb05efd45d87.yaml | 15 + releasenotes/source/2023.1.rst | 2 +- releasenotes/source/2024.2.rst | 6 + releasenotes/source/index.rst | 1 + .../locale/en_GB/LC_MESSAGES/releasenotes.po | 185 +- requirements.txt | 6 +- setup.cfg | 3 + test-requirements.txt | 4 +- tools/mypywrap.sh | 2 + tox.ini | 9 +- 162 files changed, 6794 insertions(+), 1282 deletions(-) Requirements updates -------------------- diff --git a/driver-requirements.txt b/driver-requirements.txt index 785e22877..8d78e3087 100644 --- a/driver-requirements.txt +++ b/driver-requirements.txt @@ -55,0 +56,3 @@ python-linstor>=1.7.0 # LGPLv3 + +# Quobyte +psutil>=5.7.2 # BSD diff --git a/requirements.txt b/requirements.txt index 2e342031f..aa80ce097 100644 --- a/requirements.txt +++ b/requirements.txt @@ -9 +8,0 @@ greenlet>=0.4.16 # MIT -httplib2>=0.18.1 # MIT @@ -22 +21 @@ oslo.middleware>=4.1.1 # Apache-2.0 -oslo.policy>=3.11.0 # Apache-2.0 +oslo.policy>=4.5.0 # Apache-2.0 @@ -36 +34,0 @@ PasteDeploy>=2.1.0 # MIT -psutil>=5.7.2 # BSD @@ -54 +52 @@ oslo.vmware>=3.10.0 # Apache-2.0 -os-brick>=6.0.0 # Apache-2.0 +os-brick>=6.10.0 # Apache-2.0 diff --git a/test-requirements.txt b/test-requirements.txt index aad135c51..0b0e20c6d 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -6 +6 @@ -hacking>=6.1.0,<6.2.0 # Apache-2.0 +hacking>=7.0.0,<7.1.0 # Apache-2.0 @@ -21 +21 @@ doc8>=0.8.1 # Apache-2.0 -mypy>=1.7.0 # MIT +mypy>=1.7.0,<1.16.0 # MIT
participants (1)
-
no-reply@openstack.org