We are gleeful to announce the release of: cinder 16.0.0: OpenStack Block Storage This release is part of the ussuri 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. 16.0.0 ^^^^^^ Bug Fixes * NetApp ONTAP: Fixes bug 1839384 Detaching any instance from multiattached volume terminates connection. Now the connection is terminated only if there're no other instances using the same initiator. Changes in cinder 15.0.0.0rc1..16.0.0 ------------------------------------- cc9014ab4 Monkey patch original current_thread _active 68b381bf2 Nit: Update comment and release note on Quobyte driver bugfix d3b1d5c4f Fix nits from RBD volume migration changes 1768cf025 Add glance image colocation feature for Virtuozzo driver b80df0858 NetApp SolidFire: Fix pylint issues 87b933db7 NetApp ONTAP: Fix iSCSI multiattach volume terminates connection ba8346596 Imported Translations from Zanata 404063076 Correct unsupported drivers release note b0a564484 Revert "Mark MacroSAN Driver Unsupported" 84ddc1b45 Update TOX_CONSTRAINTS_FILE for stable/ussuri 72b786044 Update .gitreview for stable/ussuri fa376a759 Add ussuri prelude to release notes 9e9c6f389 Remove XIV part from configuration docs 18c1160d6 update typo and official brandname in RN 6d3a89488 Update NetApp SolidFire Active/Active support in Support Matrix 44b347475 Add release note for drivers unsupported in Train 5cafda7f4 Fix driver doc ordering do to file casing 06d1fb356 Add filter_function and goodness_function to pools d0e30ff6f Updating docs for Datera driver f1cb8e5d8 HPE 3PAR: Support duplicated FQDN in network 1f4f7810c Add support for IBM GPFS Driver 5eaa92434 PowerMax Driver - RDF status validation 2b5ff4da0 Imported Translations from Zanata 681a01742 add docs and release note for sandstone iscsi driver Partially-implements: bp add-sandstone-driver b9cf3acfc Update HACKING document to match current checks 602e70cb5 Cleanup py27 support ab126efcb Correct description for encryption-type policies 65604daae Resolve deprecation of encryption policy target aef7fe44c PowerMax Driver - PowerMax Pools Fix 9fabc40cc PowerMax Driver - Compression Change Bug Fix ea5a9c35e Fix volume migration fails in the same ceph RBD pool d6ef15829 Imported Translations from Zanata 41ed47956 Updating release notes for Datera driver 17c07c1dc Fix arguments order inside assertEqual 4335fe086 PowerMax Driver - Detach RepConfig logging & Retype rename remote fix 1e0e7042a Add tests for volume type encryption type policies c86133cb5 Fix missing print format in log messages 19bf3f9cd Update upgrade check removed drivers for ussuri 283cf08a0 Prevent creation of ssh_known_hosts file in UT run 8716c5527 Handle py38 unit test changes 4f85dd747 [DS8000] Update cinder driver configuration guide 7c685f0d6 Support Glance image data colocation 6840ddf96 NetApp SolidFire: Add active/active replication f24eb2fc6 NetApp SolidFire: Fix failback failing after service restart 007e45ba5 [Unity] Retype volume support 584f4f17e [Unity] Support consistency group replication eb915e2db Add hacking check for 3rd party mock ad2f8340c Imported Translations from Zanata fdb6d28cd Add sandstone iscsi driver. 03d2762f8 Mark Nimble Storage Driver supported d5ad204ae PowerMax Driver - Manage volume emulation check e5e6bc686 PowerMax Driver - Deletion of group with volumes 32938d04b PowerMax Driver - Replication Metadata Fix 2e0e37c54 Followup to address open review comments 447206292 Imported Translations from Zanata 9cc149992 validator: Replace InvalidInput exception w/ InvalidName 1a9518119 RBD: add support for revert-to-snapshot 95c20b99c Revert "Remove ProphetStor Flexvisor Driver" 652c387c8 PowerMax Driver - Version comparison correction f26f683c0 Adds support for min/max volume size on vol_type dd3b30740 Revert "Remove the Virtuozzo Storage Driver" 207bead25 Revert "Remove the Veritas Access Driver" 5fb2a66bb Correct ReST syntax 1a3ad6d8c Add revert to snapshot support in VxFlex OS driver 521a49f04 Add support for volume migration in VxFlex OS driver 4e320543c Add OpenStack volume replication v2.1 support in VxFlex OS driver f75b2865f Add support for VxFlex OS 3.5 to VxFlex OS driver 4863230fb Add features for add backup id to volume metadata 00519aef9 Remove HPE Lefthand Driver 51cef73a5 PowerMax Driver - Limit replication devices fae2191a5 PowerMax Driver - SRDF Replication Fixes 174cb9db9 PowerMax Driver - Update single underscores 48473222d Imported Translations from Zanata af5dbfd68 Move release note to correct directory 364b5cc32 Revert "Remove Nimble Storage Driver" 6847ba2d6 Drop unicode() hacking check 9b4321f84 Fix revert snapshot issue fb114ed94 [Unity] Support create volume with tiering policy. 44bd1fba9 Correct two typos in support-matrix.ini 1065a84b7 Update hacking to 3.x release a144fa347 Re-enable local hacking checks 19288b610 Add test coverage for manage_existing API revert a4c13863c PowerMax Driver - Support of Multiple Replication 42ed2e4f1 Change _get_volume_size_gb to _get_volume_size_bytes 5da7d449a Preserve request id in Cinder logs when creating boot volume 06b9e3c49 Allow creating volumes from snapshots during backups for Quobyte be547a9cf API: os-reset_status notification fix 50756ce5d Remove suds from requirements 2644ab606 RBD: Add missing driver options 0f7f413c6 SAN: Add missing driver options 662677280 Do not rename rbd based volume after migration d2d7aed47 PowerMax Driver - Allowing for default volume type in group d987062d1 Vmware: Revert the volume stats revert. 4add0f546 Update weekly meeting location c8692366d Imported Translations from Zanata 918a2ca28 Add configuration item for infortrend document 4296ea130 PowerMax Driver - Legacy volume not found 471ef4d39 Imported Translations from Zanata 1870d2ac0 PowerMax Driver - SRDF Enhancement f88845d75 [Unity] Fix TypeError for test case test_delete_host_wo_lock d5950b36d QNAP: Fix login on Python3 929599d52 Update the title of Inspur G2 storage driver. 92aeec3ad PowerMax Driver - Safeguarding retype to some in-use replicated modes 394fbd7e2 RBD: fix volume reference handling in clone logic 104813a3e Tests: Remove Python 2 compat file_spec code 56e22584c Make cinder-plugin-ceph-tempest job voting 8113e9a37 Update in-tree Datera Cinder driver 674b86a5d Always use the current volume URL in the Quobyte driver 87a7e80a2 Fix DriverFilter string evaluations 98e04c7b0 Ussuri contrib docs community goal 8aa6d328f PowerMax Driver - Replication array serial check 88411cfc2 Blacklist stestr 2.3.0 bfd34eff7 PowerMax Driver - Print extend volume info 9ab1ff005 Port several legacy tempest jobs to Zuul v3 c6f6ee114 Imported Translations from Zanata 046e17247 Mark Huawei Fusionstorage Driver Supported 69462315b ChunkedBackupDriver: Freeing memory on restore c79dfa6fa Revert "Remove Huawei FusionStorage Driver" 7e98d14a5 Support to query volume filter by updated_at/created_at a98969380 Cinder backup export broken e276986e4 PowerMax Driver - Short host name and port group name override f0211b53b Create backups via scheduler c9815e27e Imported Translations from Zanata 27aaf72bb Run cinder-plugin-ceph-tempest on py3 5c2f839a0 Add new license scheme for Flashsystem9000 series cff7fffc3 Tell reno to ignore the kilo branch c6a1efa02 Install all requirements in docs builds 7ad6ce7dd Change path to query in cinderAPI V3-volume delete 562090e99 3PAR: Revert flag for Active/Active High Availability Support d8630f2ea Fix stestr command error in doc 3f4559e1c Seagate driver: Add Basic auth header when logging in via HTTPS 41b0eb235 Support volume transfer `name` filters 9126f7314 PowerMax Driver - Get Manageable Volumes Fix fe3b8ff23 Fix volume unit test 8cc095d1d NEC driver: fix migrate/retype an in-use volume 98f08db85 Update driver removal policy 2c542eed7 Update reviewing doc with py3 usage guidelines 9af6e70a0 Add cryptsetup to bindep.txt 7c3621311 Skip cryptsetup password quality checking 20924ae32 Remove Dell EMC PS Series Driver f3ebdd56c Configurable timeout of the QEMU img conversion a2d6f8896 Handle retries in PowerMax unit tests 3034d1abf Add migration to make volume_type_id non nullable 90927c495 Refactor README links 350973f3d Support multiple stores of Glance 65eb01070 Fix some typos in docs 6eab0e324 Add upgrade check for removed Veritas Access driver 9bc67c897 RBD: catch argument exceptions when configuring multiattach 81590cbf8 Bump paramiko requirement 5ce39e982 Tests: hacking check tweaks 491d3f3fa Hacking: Remove C304 check for LOG.audit d9cf1f439 Update oslo.vmware version 9e5e52fc6 Fix an issue in storwize unit test case 2a5cc4fef Mark MacroSAN Driver Unsupported 7c8cd0ba0 PowerMax Driver - Unisphere storage group/array tagging support bb3846b28 Add upgrade check for removed VZStorage driver 03b5724f4 PowerMax Driver - RDF clean snapvx target fix 5649da137 Remove the Veritas Access Driver 38d3a7d87 Mark Veritas CNFS Driver Unsupported 3e3153059 Remove the Virtuozzo Storage Driver a5bb17bdf Make volume soft delete more thorough e38745241 Remove hacking check N325 a4d8f7616 Add note that block-box is not supported 1f7b0efdc Enable flake8-logging-format extension a90970da1 Clean up test requirements 3c8ff232e Mark IET target driver deprecated 3761bb6af Imported Translations from Zanata 4013fed06 Fujitsu Driver: Change the calculation of TPP's capacity 0a4401d2b Pure Storage - remove six due to Py2 support dropped d22e54c25 Fix: Create new cache entry when xtremio reaches snap limit 7a6e457f6 Update release notes for ibm storage 3eb9b422f Introduce flake8-import-order extension 0d4cba3b0 Huawei Cinder Driver Support Dorado V6 Storage.(iSCSI, FC) 4fa03dd41 Fix duplicated words issue like " should should " 54e9e9c93 Add missing parameters in log messages 22ec98e6a Drop requirements for unsupported python versions d9ce598f0 Raise hacking version to 2.0.0 589a74de2 api-ref: give an example of volume['attachments'] 8af54dcb7 Fix trivial typo in comment. fe7cf6be8 Fix KeyError exception when volume filter file does not exist e35b19ec4 Correct typos 371feff10 Doc: update storwize cinder driver configuration guide 19a4f505f Remove unused exception catch in revert d5e9e1046 Add upgrade check for removed Sheepdog driver 3ab6aae33 Add upgrade check for removed Nimble driver 91bca9225 Add upgrade check for removed ProphetStor driver e010634fb Add upgrade check for removed Huawei driver 0835b0862 Remove Sheepdog Driver 416e60f57 Remove Nimble Storage Driver cbda94022 Remove ProphetStor Flexvisor Driver 5ccf4856c PowerMax Docs - corrections and improvements 59176660f doc: clarify usage of use_multipath_for_image_xfer parameter 120e3f31e Remove Huawei FusionStorage Driver 3ee18e5f6 doc: fixes typo in multi backend configration doc 2558ae14d Update the community page. 1e6707212 Fix: failed to create snapshot with DriverFilter 195e12b1c Fixed open tempfile.NamedTemporaryFile as text in Python3 ae8047c65 StorPool: move the config to the shared group. 3ab8ec971 Move cinder grenade job to py3 and in cinder repo 8c2e3cd66 Mark Brocade FC ZM driver unsupported 77a285b81 DS8k Cinder Driver support Python3 effe719e8 Elaborate on terminate_connection documentation acfc87e20 Publish backup capabilities to a scheduler d6cd56bac Readd reno to test-requirements 9359daa74 Removed unnecessary lines e012113ca Mark storwize driver supported 0830eb3d9 Fix pylint E1101 and E1135 issue c93000b2c Remove Python 2 support from testing and gate jobs 49b941b83 PowerMax Driver - retype attached replication fix 27a5c58bd PowerMax Driver - Volume group delete failure dd47dea6a PowerMax Driver - Unmanage Snapshot Delete Fix 552e82334 Tests: Isolate rbd deferred deletion tests fc76367cd Tests: Remove unused rbd mock_driver_configuration 139ff1dfc Start README.rst with a better title 250b51c8d PowerMax Driver - Setting minimum Unisphere version to 9.1.0.5 0214160f7 Imported Translations from Zanata 6c723878d Modify help for update host command b515cbade Drop old neutron-grenade job 0eab57ebf Fix tox 'bindep' environment 66581bacb Convert PrettyTable usage to tabulate 3493a0dab remotefs: remove invalid "external" arg on lock method f3ed9d436 RemoteFS: Use dest vol id instead of source id in snapshot temp name 7cc2e402f Fix remotefs clone volume locking b5b6443ad Remove unnecessary saving of host and availability_zone c0d06dd1f Remove py2 mentions from contributor docs 01d8401d1 SPDK drivers: Update RPC calls to match latest SPDK changes 04f8e4665 NEC driver: fix a non-disruptive backup error 1a788b7b5 Use volume utils to clone encryption 59ed2b400 Change the RPC parameter f08722958 Pure Storage - bump version numbers for Ussuri 25a32168a iSCSI driver initialization should fail for Primera backend 3182a9c92 Fix "is"/"is not" with a literal usage 51c19dc81 update review site link b3c68b777 Deprecate rbd_keyring_conf option 16dbad18c NEC driver: fix an undefined variable 2eabeacfb Pure Storage - Fix disconnect error in clustered environments 3566c5145 Increase cpu limit for image conversion d988ee346 Fujitsu Driver: Multiple pools support aedd8b5bf Reserve migrations for DB backports 99916612d PowerMax Driver - QoS calculation failure 357379b0a NEC driver: replace deprecated xml library 6271bb316 Fix VxFlexOS documentation e4d9a43a2 Remove Oracle ZFSSA drivers 328fd3792 3PAR: Add HPE Primera related information 0447d2fa3 [Trivial] Adjust log message and add missing ws between words e6f4ead7d Fix source link. e833ea8b2 docs: update cinder system architecture page a45dc60c4 Switch to opensuse-15 nodeset 15b867c0a Add volume type name and description check when update volume type 6288829cb Switch to official Ussuri jobs 0f082b0cb Remove unreferenced document table and image files 7caea1c0c Remove warning that docs are auto generated cc3dd4a69 Add reference to LP bug in configuration doc readme 4b53ae961 Remove duplicate lines in netapp driver documentation 5b7122654 Imported Translations from Zanata ddc91052e NetApp SolidFire: Add options for replication mode 7f601519a PowerMax Driver - ODE Capabilities Fix 92b43f9c6 LINSTOR driver update for LINSTOR v0.9.12 with REST API cd6643d79 Pure: Ensure generated volume name does not exceed 63 characters 209655146 NEC Driver : Code Refactoring a657e66e4 Tests: Fix retype unit test InvalidUUID warning ba7406d13 Fix: Online migrations for untyped volumes/snapshots de3f8e2bf Automate generation of quotas api-ref samples 5ddf62085 3PAR: For Peer Persistence, add policy options in RCG 66638a0e7 Automate generation of qos specs api-ref samples b1bac3953 Update master for stable/train 215d6b2b2 NetApp SolidFire: Fix replication 17bd4c37a PowerMax Docs - Short host and port group name changes 6f2efb871 Port check_exec.py to Python 3 d12e2e73f PowerMax Docs - New features and supported software bdf59306f Add "service token" documentation fbc583e4b Add doc page for accelerate image compression c843b9b20 Fix missing print format in log messages be99ddae2 Move the constants to constants.py (for Fujitsu driver) 3855eaca2 Move hacking checks to tests dir ddb42e3a0 Fix pylint env for ancient versions of git a49fa6ee1 Bump pylint to 2.3.0 cf01d7eaf Mark Virtuozzo Driver Unsupported 6ff2c4a1d [api-ref]Host name is not necessary to contain '@' 8ba809240 Enable mutate for cinder scheduler a80661608 Hedvig: Migration to py37 ecb30366a api-ref: add metadata parameter in the response of create-backup 63aebb5de Fix issue of getting detail backups list info 6b11d9d43 QNAP: Avoid unnecessary sleeps 01bfdbd45 VMware: Implement clone_image 7c8b567ba Extend remove_version_from_href support Diffstat (except docs and test files) ------------------------------------- .gitignore | 2 + .gitreview | 1 + .zuul.yaml | 143 +- CONTRIBUTING.rst | 23 +- HACKING.rst | 17 +- README.rst | 31 +- api-ref/source/v2/parameters.yaml | 5 +- api-ref/source/v3/ext-backups.inc | 1 + api-ref/source/v3/limits.inc | 2 +- api-ref/source/v3/parameters.yaml | 67 +- api-ref/source/v3/qos-specs-v3-qos-specs.inc | 16 +- api-ref/source/v3/quota-classes.inc | 6 +- api-ref/source/v3/quota-sets.inc | 10 +- .../samples/{ => limits}/limits-show-response.json | 0 api-ref/source/v3/samples/qos-create-response.json | 21 - api-ref/source/v3/samples/qos-list-response.json | 22 - api-ref/source/v3/samples/qos-show-response.json | 21 - .../v3/samples/{ => qos}/qos-create-request.json | 0 .../source/v3/samples/qos/qos-create-response.json | 18 + .../source/v3/samples/qos/qos-list-response.json | 10 + .../source/v3/samples/qos/qos-show-response.json | 18 + .../v3/samples/{ => qos}/qos-unset-request.json | 0 .../v3/samples/{ => qos}/qos-update-request.json | 0 .../v3/samples/{ => qos}/qos-update-response.json | 0 .../source/v3/samples/qos/qos_show_response.json | 3 + api-ref/source/v3/samples/qos_show_response.json | 9 - .../quota_classes/quota-classes-show-response.json | 15 + .../quota-classes-update-request.json | 7 + .../quota-classes-update-response.json | 14 + .../quota_sets/quotas-show-defaults-response.json | 15 + .../samples/quota_sets/quotas-show-response.json | 15 + .../quota_sets/quotas-show-usage-response.json | 55 + .../{ => quota_sets}/quotas-update-request.json | 1 - .../samples/quota_sets/quotas-update-response.json | 14 + .../v3/samples/quotas-show-defaults-response.json | 21 - .../source/v3/samples/quotas-show-response.json | 21 - .../v3/samples/quotas-show-usage-response.json | 65 - .../source/v3/samples/quotas-update-response.json | 20 - .../v3/samples/versions/version-show-response.json | 2 +- .../v3/samples/versions/versions-response.json | 2 +- api-ref/source/v3/volumes-v3-volumes.inc | 4 + bindep.txt | 2 + cinder/api/common.py | 13 +- cinder/api/contrib/admin_actions.py | 26 +- cinder/api/contrib/cgsnapshots.py | 2 +- cinder/api/contrib/quotas.py | 3 +- cinder/api/contrib/types_extra_specs.py | 9 + cinder/api/contrib/volume_actions.py | 6 +- cinder/api/contrib/volume_image_metadata.py | 4 +- cinder/api/contrib/volume_transfer.py | 2 + cinder/api/contrib/volume_type_encryption.py | 27 +- cinder/api/extensions.py | 2 +- cinder/api/microversions.py | 2 + cinder/api/openstack/__init__.py | 2 +- cinder/api/openstack/api_version_request.py | 6 +- cinder/api/openstack/rest_api_version_history.rst | 6 +- cinder/api/openstack/wsgi.py | 19 +- cinder/api/schemas/volume_types.py | 2 +- cinder/api/v2/volumes.py | 2 +- cinder/api/v3/attachments.py | 2 +- cinder/api/v3/volume_transfer.py | 2 + cinder/api/v3/volumes.py | 39 +- cinder/api/validation/parameter_types.py | 7 +- cinder/api/validation/validators.py | 2 +- cinder/api/views/backups.py | 8 +- cinder/backup/api.py | 21 +- cinder/backup/chunkeddriver.py | 3 + cinder/backup/drivers/ceph.py | 8 +- cinder/backup/manager.py | 77 +- cinder/backup/rpcapi.py | 12 +- cinder/brick/local_dev/lvm.py | 5 +- cinder/cmd/api.py | 17 +- cinder/cmd/backup.py | 13 +- cinder/cmd/manage.py | 14 +- cinder/cmd/scheduler.py | 17 +- cinder/cmd/status.py | 25 +- cinder/cmd/volume.py | 31 +- cinder/cmd/volume_usage_audit.py | 34 +- cinder/context.py | 3 +- cinder/db/sqlalchemy/api.py | 94 +- cinder/db/sqlalchemy/migrate_repo/manage.py | 4 +- .../migrate_repo/versions/133_placeholder.py} | 23 +- .../migrate_repo/versions/134_placeholder.py | 22 + .../migrate_repo/versions/135_placeholder.py | 22 + .../versions/136_make_vol_type_col_non_nullable.py | 52 + cinder/exception.py | 13 + cinder/image/cache.py | 5 +- cinder/image/glance.py | 29 +- cinder/image/image_utils.py | 41 +- cinder/interface/volume_driver.py | 3 + cinder/keymgr/migration.py | 5 +- cinder/locale/de/LC_MESSAGES/cinder.po | 813 +-- cinder/locale/es/LC_MESSAGES/cinder.po | 676 +- cinder/locale/fr/LC_MESSAGES/cinder.po | 665 +- cinder/locale/it/LC_MESSAGES/cinder.po | 659 +- cinder/locale/ja/LC_MESSAGES/cinder.po | 716 +-- cinder/locale/ko_KR/LC_MESSAGES/cinder.po | 628 +- cinder/locale/pt_BR/LC_MESSAGES/cinder.po | 652 +- cinder/locale/ru/LC_MESSAGES/cinder.po | 636 +- cinder/locale/zh_CN/LC_MESSAGES/cinder.po | 611 +- cinder/locale/zh_TW/LC_MESSAGES/cinder.po | 595 +- cinder/manager.py | 12 +- cinder/objects/backup.py | 9 +- cinder/objects/base.py | 2 +- cinder/objects/cgsnapshot.py | 3 +- cinder/objects/consistencygroup.py | 2 +- cinder/objects/group_snapshot.py | 3 +- cinder/objects/qos_specs.py | 2 +- cinder/objects/volume.py | 3 - cinder/opts.py | 26 +- cinder/policies/volume_type.py | 28 +- cinder/policy.py | 30 - cinder/privsep/hscli.py | 5 +- cinder/quota_utils.py | 5 +- cinder/scheduler/driver.py | 5 + cinder/scheduler/evaluator/evaluator.py | 20 +- cinder/scheduler/filter_scheduler.py | 10 +- cinder/scheduler/host_manager.py | 111 +- cinder/scheduler/manager.py | 24 + cinder/scheduler/rpcapi.py | 9 +- cinder/service.py | 3 +- cinder/test.py | 3 +- .../samples/limits/limits-show-response.json.tpl | 17 + .../samples/qos/qos-create-request.json.tpl | 5 + .../samples/qos/qos-create-response.json.tpl | 18 + .../samples/qos/qos-list-response.json.tpl | 10 + .../samples/qos/qos-show-response.json.tpl | 18 + .../samples/qos/qos-update-request.json.tpl | 5 + .../samples/qos/qos-update-response.json.tpl | 5 + .../samples/qos/qos_show_response.json.tpl | 3 + .../quota-classes-show-response.json.tpl | 15 + .../quota-classes-update-request.json.tpl | 7 + .../quota-classes-update-response.json.tpl | 14 + .../quotas-show-defaults-response.json.tpl | 15 + .../quota_sets/quotas-show-response.json.tpl | 15 + .../quota_sets/quotas-show-usage-response.json.tpl | 55 + .../quota_sets/quotas-update-request.json.tpl | 7 + .../quota_sets/quotas-update-response.json.tpl | 14 + .../api/contrib/test_backup_project_attribute.py | 1 - .../unit/api/contrib/test_consistencygroups.py | 7 +- .../contrib/test_extended_snapshot_attributes.py | 2 +- .../unit/api/contrib/test_qos_specs_manage.py | 5 +- .../unit/api/contrib/test_snapshot_actions.py | 3 +- .../unit/api/contrib/test_snapshot_unmanage.py | 3 +- .../unit/api/contrib/test_types_extra_specs.py | 150 +- .../unit/api/contrib/test_volume_image_metadata.py | 2 +- .../unit/api/contrib/test_volume_type_access.py | 2 +- .../unit/attachments/test_attachments_manager.py | 3 +- .../unit/backup/drivers/test_backup_driver_base.py | 2 +- .../unit/backup/drivers/test_backup_glusterfs.py | 7 +- .../unit/backup/drivers/test_backup_google.py | 7 +- .../unit/group/test_groups_manager_replication.py | 2 +- .../scheduler/test_allocated_capacity_weigher.py | 2 +- .../scheduler/test_stochastic_weight_handler.py | 7 +- .../unit/scheduler/test_volume_number_weigher.py | 2 +- .../drivers/dell_emc/powermax/powermax_data.py | 377 +- .../dell_emc/powermax/powermax_fake_objects.py | 11 +- .../dell_emc/powermax/test_powermax_common.py | 1694 +++-- .../drivers/dell_emc/powermax/test_powermax_fc.py | 15 +- .../dell_emc/powermax/test_powermax_iscsi.py | 3 +- .../dell_emc/powermax/test_powermax_masking.py | 184 +- .../dell_emc/powermax/test_powermax_metadata.py | 30 +- .../dell_emc/powermax/test_powermax_provision.py | 182 +- .../dell_emc/powermax/test_powermax_replication.py | 1716 ++++-- .../dell_emc/powermax/test_powermax_rest.py | 782 ++- .../dell_emc/powermax/test_powermax_utils.py | 1129 +++- .../unit/volume/drivers/dell_emc/sc/test_fc.py | 2 +- .../unit/volume/drivers/dell_emc/sc/test_sc.py | 5 +- .../unit/volume/drivers/dell_emc/sc/test_scapi.py | 7 +- .../unit/volume/drivers/dell_emc/test_xtremio.py | 2 +- .../volume/drivers/dell_emc/unity/fake_enum.py | 24 + .../volume/drivers/dell_emc/unity/test_adapter.py | 295 +- .../volume/drivers/dell_emc/unity/test_client.py | 121 +- .../volume/drivers/dell_emc/unity/test_driver.py | 91 +- .../drivers/dell_emc/unity/test_replication.py | 2 +- .../volume/drivers/dell_emc/unity/test_utils.py | 86 +- .../unit/volume/drivers/dell_emc/vnx/__init__.py | 3 +- .../unit/volume/drivers/dell_emc/vnx/fake_enum.py | 1 + .../unit/volume/drivers/dell_emc/vnx/res_mock.py | 3 +- .../volume/drivers/dell_emc/vnx/test_adapter.py | 2 +- .../volume/drivers/dell_emc/vnx/test_common.py | 2 +- .../volume/drivers/dell_emc/vnx/test_driver.py | 2 +- .../drivers/dell_emc/vnx/test_replication.py | 2 +- .../unit/volume/drivers/dell_emc/vnx/test_utils.py | 2 +- .../unit/volume/drivers/dell_emc/vnx/utils.py | 2 +- .../volume/drivers/dell_emc/vxflexos/__init__.py | 10 + .../unit/volume/drivers/dell_emc/vxflexos/mocks.py | 22 +- .../dell_emc/vxflexos/test_create_cloned_volume.py | 6 +- .../dell_emc/vxflexos/test_create_snapshot.py | 5 +- .../dell_emc/vxflexos/test_create_volume.py | 5 +- .../vxflexos/test_create_volume_from_snapshot.py | 7 +- .../dell_emc/vxflexos/test_delete_snapshot.py | 14 +- .../dell_emc/vxflexos/test_delete_volume.py | 6 +- .../dell_emc/vxflexos/test_extend_volume.py | 3 +- .../dell_emc/vxflexos/test_get_manageable.py | 3 +- .../drivers/dell_emc/vxflexos/test_groups.py | 24 +- .../vxflexos/test_initialize_connection.py | 2 +- .../test_initialize_connection_snapshot.py | 2 +- .../dell_emc/vxflexos/test_manage_existing.py | 11 +- .../vxflexos/test_manage_existing_snapshot.py | 10 +- .../dell_emc/vxflexos/test_migrate_volume.py | 221 + .../volume/drivers/dell_emc/vxflexos/test_misc.py | 56 +- .../drivers/dell_emc/vxflexos/test_replication.py | 112 + .../vxflexos/test_revert_volume_to_snapshot.py | 104 + .../drivers/dell_emc/vxflexos/test_versions.py | 6 +- .../volume/drivers/fusionstorage/test_dsware.py | 13 +- .../volume/drivers/fusionstorage/test_fs_client.py | 3 +- .../volume/drivers/fusionstorage/test_fs_conf.py | 5 +- .../volume/drivers/fusionstorage/test_utils.py | 2 +- .../volume/drivers/hpe/fake_hpe_3par_client.py | 3 +- .../unit/volume/drivers/hpe/test_hpelefthand.py | 3469 ----------- .../volume/drivers/huawei/test_huawei_drivers.py | 9 +- .../unit/volume/drivers/ibm/test_ds8k_proxy.py | 6 +- .../volume/drivers/ibm/test_ibm_flashsystem.py | 8 +- .../drivers/ibm/test_ibm_flashsystem_iscsi.py | 10 +- .../unit/volume/drivers/ibm/test_ibm_storage.py | 3 +- .../unit/volume/drivers/ibm/test_storwize_svc.py | 89 +- .../unit/volume/drivers/ibm/test_xiv_proxy.py | 5 +- .../drivers/infortrend/test_infortrend_cli.py | 2 +- .../drivers/infortrend/test_infortrend_common.py | 3 +- .../drivers/inspur/as13000/test_as13000_driver.py | 8 +- .../unit/volume/drivers/inspur/instorage/fakes.py | 5 +- .../volume/drivers/inspur/instorage/test_common.py | 10 +- .../drivers/inspur/instorage/test_fc_driver.py | 7 +- .../inspur/instorage/test_helper_routines.py | 10 +- .../drivers/inspur/instorage/test_iscsi_driver.py | 10 +- .../drivers/inspur/instorage/test_replication.py | 9 +- .../drivers/netapp/dataontap/client/fakes.py | 2 +- .../drivers/netapp/dataontap/client/test_api.py | 8 +- .../netapp/dataontap/client/test_client_base.py | 4 +- .../netapp/dataontap/client/test_client_cmode.py | 4 +- .../unit/volume/drivers/netapp/dataontap/fakes.py | 9 + .../netapp/dataontap/performance/test_perf_base.py | 3 +- .../dataontap/performance/test_perf_cmode.py | 3 +- .../drivers/netapp/dataontap/test_block_base.py | 77 +- .../drivers/netapp/dataontap/test_block_cmode.py | 7 +- .../drivers/netapp/dataontap/test_nfs_base.py | 6 +- .../drivers/netapp/dataontap/test_nfs_cmode.py | 6 +- .../netapp/dataontap/utils/test_capabilities.py | 2 +- .../netapp/dataontap/utils/test_data_motion.py | 4 +- .../netapp/dataontap/utils/test_loopingcalls.py | 3 +- .../drivers/netapp/dataontap/utils/test_utils.py | 2 +- .../unit/volume/drivers/nexenta/test_nexenta.py | 9 +- .../volume/drivers/nexenta/test_nexenta5_iscsi.py | 6 +- .../drivers/nexenta/test_nexenta5_jsonrpc.py | 6 +- .../volume/drivers/nexenta/test_nexenta5_nfs.py | 6 +- .../unit/volume/drivers/sandstone}/__init__.py | 0 .../volume/drivers/sandstone/test_sds_client.py | 560 ++ .../volume/drivers/sandstone/test_sds_driver.py | 455 ++ .../unit/volume/drivers/sandstone/test_utils.py | 54 + .../volume/drivers/solidfire/test_solidfire.py | 1131 +++- .../drivers/synology/test_synology_common.py | 2 +- .../volume/drivers/synology/test_synology_iscsi.py | 2 +- .../unit/volume/drivers/test_prophetstor_dpl.py | 2 +- .../drivers/veritas_access/test_veritas_iscsi.py | 2 +- .../volume/drivers/vmware/test_vmware_datastore.py | 6 +- .../unit/volume/drivers/vmware/test_vmware_vmdk.py | 150 +- .../volume/drivers/vmware/test_vmware_volumeops.py | 7 +- .../unit/volume/flows/test_create_volume_flow.py | 78 +- .../unit/volume/flows/test_manage_snapshot_flow.py | 3 +- .../unit/volume/flows/test_manage_volume_flow.py | 45 +- .../zonemanager/test_brcd_fc_san_lookup_service.py | 2 +- .../zonemanager/test_brcd_fc_zone_client_cli.py | 2 +- .../unit/zonemanager/test_brcd_fc_zone_driver.py | 2 +- .../zonemanager/test_brcd_http_fc_zone_client.py | 5 +- .../test_cisco_fc_san_lookup_service.py | 2 +- .../zonemanager/test_cisco_fc_zone_client_cli.py | 2 +- .../unit/zonemanager/test_cisco_fc_zone_driver.py | 2 +- cinder/transfer/api.py | 2 +- cinder/utils.py | 2 +- cinder/volume/api.py | 14 + cinder/volume/driver.py | 95 +- cinder/volume/drivers/datera/datera_api2.py | 765 --- cinder/volume/drivers/datera/datera_api21.py | 1161 ++-- cinder/volume/drivers/datera/datera_api22.py | 1175 ++++ cinder/volume/drivers/datera/datera_common.py | 616 +- cinder/volume/drivers/datera/datera_iscsi.py | 446 +- cinder/volume/drivers/dell_emc/powermax/common.py | 3024 +++++---- cinder/volume/drivers/dell_emc/powermax/fc.py | 36 +- cinder/volume/drivers/dell_emc/powermax/iscsi.py | 23 +- cinder/volume/drivers/dell_emc/powermax/masking.py | 290 +- .../volume/drivers/dell_emc/powermax/metadata.py | 74 +- .../volume/drivers/dell_emc/powermax/provision.py | 227 +- cinder/volume/drivers/dell_emc/powermax/rest.py | 833 ++- cinder/volume/drivers/dell_emc/powermax/utils.py | 1211 +++- cinder/volume/drivers/dell_emc/ps.py | 717 --- .../drivers/dell_emc/sc/storagecenter_api.py | 6 +- .../drivers/dell_emc/sc/storagecenter_common.py | 2 +- cinder/volume/drivers/dell_emc/unity/adapter.py | 307 +- cinder/volume/drivers/dell_emc/unity/client.py | 59 +- cinder/volume/drivers/dell_emc/unity/driver.py | 24 +- cinder/volume/drivers/dell_emc/unity/utils.py | 60 +- cinder/volume/drivers/dell_emc/vnx/adapter.py | 2 - cinder/volume/drivers/dell_emc/vnx/client.py | 2 +- cinder/volume/drivers/dell_emc/vnx/taskflows.py | 2 - cinder/volume/drivers/dell_emc/vnx/utils.py | 2 +- cinder/volume/drivers/dell_emc/vxflexos/driver.py | 2569 ++++---- cinder/volume/drivers/dell_emc/vxflexos/options.py | 6 + .../drivers/dell_emc/vxflexos/rest_client.py | 705 +++ cinder/volume/drivers/dell_emc/vxflexos/utils.py | 61 + cinder/volume/drivers/dell_emc/xtremio.py | 22 +- .../volume/drivers/fujitsu/eternus_dx/constants.py | 120 + .../drivers/fujitsu/eternus_dx/eternus_dx_cli.py | 264 + .../fujitsu/eternus_dx/eternus_dx_common.py | 663 +- .../drivers/fujitsu/eternus_dx/eternus_dx_iscsi.py | 6 +- cinder/volume/drivers/fusionstorage/constants.py | 2 +- cinder/volume/drivers/fusionstorage/dsware.py | 8 +- cinder/volume/drivers/fusionstorage/fs_client.py | 6 +- cinder/volume/drivers/fusionstorage/fs_conf.py | 2 +- cinder/volume/drivers/hedvig/hedvig_cinder.py | 12 +- cinder/volume/drivers/hedvig/rest_client.py | 64 +- cinder/volume/drivers/hpe/hpe_3par_common.py | 94 +- cinder/volume/drivers/hpe/hpe_3par_fc.py | 4 +- cinder/volume/drivers/hpe/hpe_3par_iscsi.py | 14 +- cinder/volume/drivers/hpe/hpe_lefthand_iscsi.py | 2047 ------- ...ar_multiattach_detach_fix-d2d3785d656fba90.yaml | 3 - cinder/volume/drivers/huawei/common.py | 6 +- cinder/volume/drivers/huawei/huawei_conf.py | 7 +- cinder/volume/drivers/huawei/replication.py | 2 +- cinder/volume/drivers/huawei/rest_client.py | 4 +- cinder/volume/drivers/ibm/gpfs.py | 14 +- .../volume/drivers/ibm/ibm_storage/ds8k_helper.py | 6 +- .../volume/drivers/ibm/ibm_storage/ds8k_proxy.py | 5 +- .../drivers/ibm/ibm_storage/ds8k_replication.py | 3 +- .../drivers/ibm/ibm_storage/ds8k_restclient.py | 10 +- .../volume/drivers/ibm/ibm_storage/ibm_storage.py | 3 - cinder/volume/drivers/ibm/ibm_storage/proxy.py | 2 +- cinder/volume/drivers/ibm/ibm_storage/xiv_proxy.py | 24 +- .../drivers/ibm/ibm_storage/xiv_replication.py | 3 +- .../ibm/storwize_svc/storwize_svc_common.py | 57 +- .../drivers/ibm/storwize_svc/storwize_svc_iscsi.py | 4 +- cinder/volume/drivers/infinidat.py | 18 +- .../drivers/inspur/instorage/instorage_iscsi.py | 4 +- .../volume/drivers/inspur/instorage/replication.py | 2 +- .../volume/drivers/kaminario/kaminario_common.py | 22 +- cinder/volume/drivers/linstordrv.py | 650 +- cinder/volume/drivers/lvm.py | 31 +- cinder/volume/drivers/macrosan/driver.py | 2 +- cinder/volume/drivers/nec/cli.py | 16 +- cinder/volume/drivers/nec/volume.py | 4 +- cinder/volume/drivers/nec/volume_common.py | 112 +- cinder/volume/drivers/nec/volume_helper.py | 96 +- .../volume/drivers/netapp/dataontap/block_base.py | 18 + .../volume/drivers/netapp/dataontap/client/api.py | 6 +- .../drivers/netapp/dataontap/client/client_base.py | 2 - .../netapp/dataontap/client/client_cmode.py | 6 +- .../drivers/netapp/dataontap/utils/loopingcalls.py | 6 +- cinder/volume/drivers/nexenta/iscsi.py | 3 +- cinder/volume/drivers/nexenta/nfs.py | 2 +- cinder/volume/drivers/nexenta/utils.py | 2 +- cinder/volume/drivers/nimble.py | 10 +- cinder/volume/drivers/prophetstor/dplcommon.py | 2 +- cinder/volume/drivers/pure.py | 49 +- cinder/volume/drivers/qnap.py | 79 +- cinder/volume/drivers/quobyte.py | 31 +- cinder/volume/drivers/rbd.py | 175 +- cinder/volume/drivers/remotefs.py | 35 +- cinder/volume/drivers/rsd.py | 23 +- cinder/volume/drivers/sandstone/__init__.py | 0 cinder/volume/drivers/sandstone/constants.py | 21 + cinder/volume/drivers/sandstone/sds_client.py | 711 +++ cinder/volume/drivers/sandstone/sds_driver.py | 513 ++ cinder/volume/drivers/sheepdog.py | 661 -- cinder/volume/drivers/solidfire.py | 915 ++- cinder/volume/drivers/spdk.py | 52 +- cinder/volume/drivers/storpool.py | 3 +- cinder/volume/drivers/stx/client.py | 14 +- cinder/volume/drivers/stx/common.py | 6 +- cinder/volume/drivers/synology/synology_common.py | 2 +- cinder/volume/drivers/synology/synology_iscsi.py | 11 +- cinder/volume/drivers/veritas_cnfs.py | 3 + cinder/volume/drivers/vmware/fcd.py | 13 +- cinder/volume/drivers/vmware/vmdk.py | 156 +- cinder/volume/drivers/vzstorage.py | 14 +- cinder/volume/drivers/windows/iscsi.py | 5 +- cinder/volume/drivers/windows/smbfs.py | 12 +- cinder/volume/drivers/zfssa/restclient.py | 379 -- cinder/volume/drivers/zfssa/webdavclient.py | 160 - cinder/volume/drivers/zfssa/zfssaiscsi.py | 1314 ---- cinder/volume/drivers/zfssa/zfssanfs.py | 792 --- cinder/volume/drivers/zfssa/zfssarest.py | 1381 ----- cinder/volume/flows/api/create_volume.py | 4 +- cinder/volume/flows/api/manage_existing.py | 2 +- cinder/volume/flows/manager/create_volume.py | 22 +- cinder/volume/manager.py | 25 +- cinder/volume/targets/iet.py | 6 + cinder/volume/targets/nvmet.py | 2 +- cinder/volume/targets/scst.py | 2 +- cinder/volume/targets/spdknvmf.py | 10 +- cinder/volume/volume_types.py | 38 + cinder/volume/volume_utils.py | 41 +- cinder/wsgi/wsgi.py | 8 +- .../drivers/brocade/brcd_fc_zone_driver.py | 3 + .../drivers/brocade/brcd_http_fc_zone_client.py | 4 +- .../drivers/cisco/cisco_fc_zone_driver.py | 4 +- contrib/block-box/README.md | 6 + .../blockstorage-accelerate-image-compression.rst | 59 + .../block-storage/drivers/datera-volume-driver.rst | 109 +- .../drivers/dell-emc-powermax-driver.rst | 655 +- .../drivers/dell-emc-unity-driver.rst | 201 +- .../drivers/dell-emc-vxflex-driver.rst | 279 +- .../drivers/dell-emc-xtremio-driver.rst | 3 +- .../drivers/dell-equallogic-driver.rst | 166 - .../drivers/fujitsu-eternus-dx-driver.rst | 8 +- .../block-storage/drivers/hp-msa-driver.rst | 2 +- .../block-storage/drivers/hpe-3par-driver.rst | 125 +- .../block-storage/drivers/hpe-lefthand-driver.rst | 220 - .../drivers/huawei-storage-driver.rst | 7 +- .../drivers/ibm-storage-volume-driver.rst | 252 +- .../drivers/ibm-storwize-svc-driver.rst | 7 +- .../drivers/infortrend-volume-driver.rst | 6 +- .../block-storage/drivers/lenovo-driver.rst | 2 +- ...rage-driver.rst => macrosan-storage-driver.rst} | 6 +- .../drivers/oracle-zfssa-iscsi-driver.rst | 269 - .../drivers/oracle-zfssa-nfs-driver.rst | 300 - .../drivers/sandstone-storage-driver.rst | 96 + .../block-storage/drivers/seagate-driver.rst | 2 +- .../block-storage/drivers/sheepdog-driver.rst | 51 - .../block-storage/drivers/spdk-volume-driver.rst | 3 +- .../drivers/windows-smb-volume-driver.rst | 9 +- .../configuration/block-storage/fc-zoning.rst | 6 + .../block-storage/policy-config-HOWTO.rst | 4 +- .../configuration/block-storage/service-token.rst | 139 + .../configuration/figures/bb-cinder-fig1.png | Bin 115063 -> 0 bytes .../figures/ibm-storage-nova-concept.png | Bin 134880 -> 131638 bytes .../configuration/tables/cinder-fusionio.inc | 48 - .../configuration/tables/cinder-ibm_gpfs.inc | 10 - .../configuration/tables/cinder-ibm_gpfs_nfs.inc | 10 - .../tables/cinder-ibm_gpfs_remote.inc | 10 - .../configuration/tables/cinder-ibm_storage.inc | 10 - .../configuration/tables/cinder-infortrend.inc | 10 - .../tables/cinder-netapp_cdot_iscsi.inc | 10 - .../tables/cinder-netapp_cdot_nfs.inc | 12 - .../configuration/tables/cinder-nexenta5.inc | 10 - .../tables/cinder-prophetstor_dpl.inc | 10 - .../configuration/tables/cinder-scheduler.inc | 40 - .../configuration/tables/cinder-storage_gpfs.inc | 42 - .../configuration/tables/cinder-storwize.inc | 10 - driver-requirements.txt | 8 +- etc/cinder/resource_filters.json | 2 +- lower-constraints.txt | 24 +- playbooks/cinderlib-run.yaml | 49 - .../cinder-tempest-dsvm-lvm-lio-barbican/run.yaml | 88 - .../post.yaml | 0 .../legacy/grenade-dsvm-cinder-mn-sub-bak/run.yaml | 53 + .../grenade-dsvm-cinder-mn-sub-volbak/post.yaml | 15 + .../grenade-dsvm-cinder-mn-sub-volbak/run.yaml | 53 + .../grenade-dsvm-cinder-mn-sub-volschbak/post.yaml | 15 + .../grenade-dsvm-cinder-mn-sub-volschbak/run.yaml | 54 + playbooks/post-cinderlib.yaml | 6 + playbooks/tempest-and-cinderlib-run.yaml | 13 +- ..._Driver_Support_Dorado_V6-5289a3b0ef90e8b1.yaml | 4 + ...able-img-conversion-param-1e7b545ae816dfe8.yaml | 7 + .../bp-add-volume-backup-id-e10d053638cb2e78.yaml | 8 + .../bp-ibm-gpfs-supported-26ae5381dd2a47ad.yaml | 6 + .../notes/bug-1703405-53f09205024f2095.yaml | 7 + ...ver-after-service-restart-77e5e4da45c9c1aa.yaml | 6 + .../notes/bug-1860100-8c542363def7d408.yaml | 6 + .../notes/bug-1871524-5f6df9a61bf6b775.yaml | 5 + .../notes/bug-fix-1866871-f9d61defc00f4007.yaml | 6 + .../notes/bug-fix-1867163-27afa39ac77b9e15.yaml | 5 + .../notes/bug_1828993-8e78d7bbee16ca08.yaml | 5 + ...019.12.10.0-driver-update-cadadf95e4725164.yaml | 19 + .../dell-emc-ps-deprecation-ae8d166e1847ea94.yaml | 6 - ...eprecate-rbd_keyring_conf-432efbcd47e52c8a.yaml | 18 + .../drbd-linstor-rest-update-52fd52f6c09a4dd3.yaml | 11 + releasenotes/notes/drop-py2-377a91a5b66165ab.yaml | 6 + ...lx-volume-manage-unmanage-a24ec7f0d9989df3.yaml | 3 - ...tefs-clone-volume-locking-385e740d4a5a813b.yaml | 12 + ...fix-solidfire-replication-dcb3e59b29950933.yaml | 8 + .../fujitsu-multiple-pools-a0dd9197b16b3122.yaml | 4 + ...par-pp-rcg-policy-options-53271f38c315779f.yaml | 8 + ...r-support-duplicated-fqdn-751ad1dbcd137fbb.yaml | 7 + ...ar_multiattach_detach_fix-d2d3785d656fba90.yaml | 7 + ...usionstorage-driver-readd-70fecc39eeaa0f5f.yaml | 5 + .../ibm-storage-supported-a373a54777333929.yaml | 6 + .../ibm-storwize-supported-6518628fb78d58a4.yaml | 8 + .../notes/iet-deprecation-f8059417c6adbb78.yaml | 13 + .../mark-brocade-unsupported-d5760b4bb8173652.yaml | 17 + .../min-max-vol-size-on-type-bc7c75ea73a74d02.yaml | 5 + .../minimum-u4p-version-4c66d69d1b873796.yaml | 6 + ...e-eqlx-driver-to-dell-emc-fe5d2b484c47b7a6.yaml | 6 - ...ap-fix-detach-multiattach-d99d33dff2fefb4c.yaml | 7 + ...fire-add-replication-mode-eb26535d0ec78cb4.yaml | 7 + .../nimble-mark-supported-0c8e5e21c8d1179d.yaml | 7 + .../powermax-bug-1853589-f6c7164177da0496.yaml | 6 + ...ermax-disable-inuse-metro-89e9f398ec9e2672.yaml | 6 + ...tiple-replication-devices-0cc532ae621ea9a5.yaml | 5 + ...powermax-srdf-enhancement-56b0a2817c4d310d.yaml | 8 + ...max-storage-group-tagging-d2281e9b35994bec.yaml | 6 + ...efined-hostname-portgroup-0b01aaaa730dfaaf.yaml | 9 + .../notes/ps-duplicate-ACL-5aa447c50f2474e7.yaml | 5 - .../ps-extend_volume-no-snap-8aa447c50f2475a7.yaml | 5 - .../ps-optimize-parsing-8aa447c50f2474c7.yaml | 5 - ...er-subscription-ratio-cal-8aa447c50f2474a8.yaml | 5 - .../notes/ps-removedriver-5ba447c50f2474e7.yaml | 6 + .../ps-report-total-volumes-8aa447c50f2474a7.yaml | 4 - ...bd-multiattach-exceptions-43066312f3b527f5.yaml | 6 + ...upport-revert-to-snapshot-c9ca62c9efbabf5f.yaml | 36 + ...e-eqlx-deprecated-options-89ba02c41d4da62a.yaml | 15 - ...emove-hpe-lefthand-driver-57b03ca9ada2654c.yaml | 9 + ...tus-check-interval-option-6b27c1e29cb863e9.yaml | 11 + ...tatus-notification-update-4a80a8b5feb821ef.yaml | 26 + .../notes/rpc-update-50bef83f48d4f96f.yaml | 6 + .../sandstone-iscsi-driver-31ed72d5657a4307.yaml | 3 + .../sheepdog-driver-removal-b63d12460e886c33.yaml | 6 + ...ctive-replication-support-f77e0e12320f8b21.yaml | 6 + ...rt-glance-multiple-stores-79d11c5344f41446.yaml | 23 + ...-update-at-and-created-at-32ae9aaea131d598.yaml | 8 + ...group-replication-support-97d74275a84b06af.yaml | 5 + ...ity-retype-volume-support-773ae17b8811fb3f.yaml | 4 + ...me-tiering-policy-support-c6d0aaff4b141bd3.yaml | 4 + ...volume-to-multiple-stores-ab130774897e41c3.yaml | 9 + .../ussuri-release-prelude-ceeb11bc7fe46191.yaml | 13 + ...orted-drivers-not-removed-8cfb3e01b720e9d1.yaml | 72 + ...s_cluster_nfs_unsupported-88ab3ea5cbb6cd88.yaml | 14 + .../virtuozzo-unsupported-645b47dceb0ddbd2.yaml | 14 + ...mware_enable_volume_stats-1ef84e170187f0fa.yaml | 23 + ...re_revert_datastore_stats-ba85b30612970d91.yaml | 6 - ...ncryption-api-policy-base-4334ca94d73df238.yaml | 21 + .../vxflexos-3.5.x-support-403427dc65a7a4f6.yaml | 4 + ...xflexos-migration-support-a04a73cda323b382.yaml | 4 + ...lexos-replication-support-f43e62df35e16e3a.yaml | 5 + ...flexos-revert-to-snapshot-a90c40ec476cc2bd.yaml | 4 + releasenotes/source/index.rst | 1 + .../locale/en_GB/LC_MESSAGES/releasenotes.po | 6465 -------------------- .../source/locale/ja/LC_MESSAGES/releasenotes.po | 1227 ---- releasenotes/source/train.rst | 6 + reno.yaml | 4 + requirements.txt | 11 +- setup.cfg | 17 +- setup.py | 9 - test-requirements.txt | 14 +- tools/check_exec.py | 2 +- tools/coding-checks.sh | 2 +- tools/config/generate_cinder_opts.py | 10 +- tox.ini | 66 +- 768 files changed, 29283 insertions(+), 43880 deletions(-) Requirements updates -------------------- diff --git a/driver-requirements.txt b/driver-requirements.txt index 1c077616e..7b568f8f4 100644 --- a/driver-requirements.txt +++ b/driver-requirements.txt @@ -26,3 +25,0 @@ pyxcli>=1.1.5 # Apache-2.0 -# LINSTOR -protobuf>=3.6.1 # BSD - @@ -34 +31 @@ rbd # LGPLv2.1 -storops>=1.1.0 # Apache-2.0 +storops>=1.2.3 # Apache-2.0 @@ -44,0 +42,3 @@ storpool.spopenstack>=2.2.1 # Apache-2.0 + +# Datera +dfs_sdk>=1.2.25 # Apache-2.0 diff --git a/requirements.txt b/requirements.txt index 96785d63e..be0251685 100644 --- a/requirements.txt +++ b/requirements.txt @@ -8 +7,0 @@ defusedxml>=0.5.0 # PSF -enum34>=1.0.4;python_version=='2.7' or python_version=='2.6' or python_version=='3.3' # BSD @@ -14 +12,0 @@ jsonschema>=2.6.0 # MIT -ipaddress>=1.0.17;python_version<'3.3' # PSF @@ -22 +20 @@ oslo.context>=2.19.2 # Apache-2.0 -oslo.db>=4.27.0 # Apache-2.0 +oslo.db>=4.35.0 # Apache-2.0 @@ -36 +34 @@ osprofiler>=1.4.0 # Apache-2.0 -paramiko>=2.0.0 # LGPLv2.1+ +paramiko>=2.4.0 # LGPLv2.1+ @@ -39 +36,0 @@ PasteDeploy>=1.5.0 # MIT -PrettyTable<0.8,>=0.7.1 # BSD @@ -57 +54 @@ stevedore>=1.20.0 # Apache-2.0 -suds-jurko>=0.6 # LGPLv3+ +tabulate>=0.8.5 # MIT @@ -60 +57 @@ oslo.i18n>=3.15.3 # Apache-2.0 -oslo.vmware>=2.17.0 # Apache-2.0 +oslo.vmware>=2.35.0 # Apache-2.0 diff --git a/test-requirements.txt b/test-requirements.txt index 602320176..2bcea7133 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -6 +6,3 @@ -hacking>=1.1.0,<1.2.0 # Apache-2.0 +hacking>=3.0,<3.1.0 # Apache-2.0 +flake8-import-order # LGPLv3 +flake8-logging-format>=0.6.0 # Apache-2.0 @@ -7,0 +10 @@ hacking>=1.1.0,<1.2.0 # Apache-2.0 +stestr!=2.3.0,>=2.2.0 # Apache-2.0 @@ -11,2 +13,0 @@ fixtures>=3.0.0 # Apache-2.0/BSD -mock>=2.0.0 # BSD -os-api-ref>=1.4.0 # Apache-2.0 @@ -16,0 +18 @@ psycopg2>=2.7 # LGPL/ZPL +SQLAlchemy-Utils>=0.36.1 # BSD License @@ -18,2 +19,0 @@ testtools>=2.2.0 # MIT -testresources>=2.0.0 # Apache-2.0/BSD -testscenarios>=0.4 # Apache-2.0/BSD @@ -21 +21 @@ oslo.versionedobjects[fixtures]>=1.31.2 # Apache-2.0 -tempest>=17.1.0 # Apache-2.0 + @@ -25,0 +26,2 @@ doc8>=0.6.0 # Apache-2.0 +reno>=2.5.0 # Apache-2.0 +Pygments>=2.2.0 # BSD license
participants (1)
-
no-reply@openstack.org