python-openstackclient 7.0.0 (dalmatian)
We are excited to announce the release of: python-openstackclient 7.0.0: OpenStack Command-line Client This release is part of the dalmatian release series. The source is available from: https://opendev.org/openstack/python-openstackclient Download the package from: https://pypi.org/project/python-openstackclient Please report issues through: https://storyboard.openstack.org/#!/project/openstack/python- openstackclient For more details, please see below. 7.0.0 ^^^^^ New Features ************ * Added the "Cluster" and "Backend State" columns to "openstack volume service list" command. Note that the "Cluster" parameter is available since microversion 3.7 and "Backend State" parameter is available since microversion 3.49. * Add "image metadef object property show" command which shows a particular property inside metadef object. * Added "image metadef resource type association list" to list resource type associations for the image service. This is equivalent to the "md-namespace-resource-type-list" command in glance. * Added "image metadef resource type association create" to create a resource type association for the image service. This is equivalent to the "md-resource-type-associate" command in glance. * Added "image metadef resource type association delete" to delete a resource type association for the image service. This is equivalent to the "md-resource-type-deassociate" command in glance. * Add a new NUMA affinity policy option: "socket". That applies to any new port (using "port create") or any existing port (using "port set"). * Added support for unmanaging snapshots with the "openstack snapshot delete --remote" command. * Add support for managing volumes with "openstack volume create --remote-source <key=val> --host <host>" command. * Add support for unmanaging volumes with "openstack volume delete --remote <volume>" command. * The following commands have been migrated to SDK: * "application credential create" * "application credential delete" * "application credential list" * "application credential show" * Migrate "role assignment" commands from keystoneclient to SDK. * The "server set" and "server unset" commands have been migrated to SDK. * The following commands have been migrated to SDK: * "service create" * "service delete" * "service set" * "service list" * "service show" * Migrated volume attachment commands to SDK. * The "quota set" command now supports a "--default" option. When provided, this will allow you to set quotas for the default quota class which is the only quota class supported by the Compute and Block Storage services. This replaces the deprecated "quota set --class" option. Upgrade Notes ************* * The "compute agent *" commands have been migrated to SDK. * The "host set" command has been migrated to SDK. * The "limits show" command has been migrated to SDK. * The "server evacuate" command has been migrated to SDK. * The "openstack quota set" command previously defaulted to "-- force" behavior for network quotas. This behavior has now changed and the command now defaults to "--no-force" behavior. Users should specify the "--force" option if they wish to retain previous behavior. * The "--class" options of the "quota show" command, which was deprecated in 6.1.0 (Antelope), has now been removed in favour of the "--default" option. Quota classes were never fully implemented and the compute and volume services only support a single "default" quota class while the network service does not support quota classes at all. * The "volume set --retype-policy" parameter has been renamed to "-- migration-policy" to better convey the correct meaning of the options usage. The migration policy determines whether we are going to perform the migration in the retype opearation or not and is not related to the actual retype which just changes the volume type of the volume. Bug Fixes ********* * The "router create --flavor-id" parameter has been deprecated in favour of the "--flavor" parameter, which accepts both flavor names and flavor IDs. * Fixed issue with creating incremental volume backup. Previously, "incremental" value was not passed in the API request which is now included in the backup create request. Changes in python-openstackclient 6.6.0..7.0.0 ---------------------------------------------- 1d4aabab Respect --skip-resource when deleting. 438e40db Remove python-novaclient 6127b44d quota: Migrate 'quota *' to SDK b4f30a15 quota: Split up 'quota list' command da7eda66 quota: Default network quotas to not force 7d8baa87 quota: Add 'quota set --default' option ba2d2358 quota: Remove deprecated quota options f5f543b8 quota: Move nova-network-related quota 75b9214f tests: Remove references to novaclient methods 209f8e9e network: Replace use of in-tree API client 30a64579 compute: Migrate 'server create' to SDK bef8a7a6 identity: Migrate 'application credential' commands to SDK 717f2428 identity: Migrate 'service' commands to SDK d22f2644 compute: Prevent use of conflicting v*-fixed-ip for 'server create --nic' e6dc0f39 compute: Migrate 'server evacuate' to SDK b9b5e761 compute: Migrate remaining server actions to SDK 8d904a9e compute: Migrate 'server rebuild' to SDK 20574621 compute: Avoid third API call during 'server show' 628ac489 compute: Always use SDK client to display server bcaf2ab5 compute: Migrate 'server set', 'server unset' commands c8621e5b compute: Migrate 'server migrate' to SDK abef798f compute: Migrate 'server add/remove security group' to SDK 9d394372 common: Migrate 'limits show' to SDK 55cbb84e volume: Migrate 'volume list' to compute SDK 9f30ee9a volume: Migrate 'volume attachment *' to SDK 402327f2 tests: Migrate to 'set_xxx_api_version' helpers 88fffeab tests: Add ability to configure fake server API version 3f624295 volume: Add v3-specific volume transfer module f1f390f2 volume: add v3-specific volume type module 65cce394 volume: Add v3-specific volume module ca91c826 volume: Add v3-specific volume backup module 3f781cc3 docs: Remove references to novaclient 0f006392 compute: Migrate remaining tests to SDK objects 7252a7a7 compute: Migrate 'host set' to SDK 0f07c97e compute: Migrate 'agent *' to SDK e0f73060 network: Migrate 'port list' to compute SDK aa5eb881 compute: Migrate tests for ShowServer to SDK objects 205bac3c Fix: incremental volume backup 21155be2 docs: Fix indentation 40ce5620 compute: Remove unnecessary try-except f52e888d Followup: Reduce LOC in volume v3 service ca81b1ac Add cluster to volume service list 75696f8f Add tests for 'default security group rule create' 4e94c415 Add volume snapshot unmanage support 49c42c73 Add DeleteVolumeSnapshot class to v3 de9d0f9e Identity: Migrate 'role assignment' commands to SDK 887f1e93 tox: Add testenv descriptions fdc2763a Add support for volume unmanage 54833709 Remove admin only text from 'port create' help text cf6dd62d Drop direct dependency on simplejson bb459d49 Remove clients of retired projects 00af14b3 Add DeleteVolume class to v3 cc7773f5 Add support for managing volumes 0d9ace64 Add CreateVolume class to v3 4c312849 Fix tests on Python 3.12 50c595b6 identity: Make better use of argparse 2e7ba5e3 Router flavor_id can be a name 0fd107e6 pre-commit: Add pyupgrade hook 25f2e224 reno: Update master for unmaintained/zed 837a3dc0 tests: Fix trivial sorting issue c5b772db trivial: Prepare for pyupgrade pre-commit hook 0646f9b4 tox: Remove bandit skips, run via pre-commit 648d8df5 tox: Add functional-pyNN jobs ee239950 pre-commit: Bump versions bbe68610 Improve output of 'server migrate --wait' 276dbb6f Add image metadef resource type association commands 'create', 'list', 'delete' bb6b1e38 tests: Remove use of unnecessary fake argparse Namespace ea202fe7 tests: Use consistent shortcut to fake identity client 948b97d0 Identity: Properly list users in a group in 'user list' commands 5a18f995 volume: Deprecate '--retype-policy' in favor of '--migration-policy' a45a3642 Tox: Fix install commands for unit-tips and functional-tips 680e3e30 identity: Migrate 'user' commands to SDK c86b9d8c tests: Add identity v2, v3 FakeClientMixin cb539bab Update master for stable/2024.1 0970dd40 image cache clear: fix value of default target a4db11c6 refectoring: remove duplicate declaration 76f234eb Fix typo in the list of Glanceclient/OSC commands 9e4dbd1d refectory: remove unreachable code 7184e876 Add router default route BFD/ECMP options 16c69504 Add support for managing external gateways 58ad3cef router: Use plural form for storage of ``--fixed_ip`` argument f696aee8 Parse external-gateway argument in separate helper 966051cf Add NUMA affinity policy options "socket" 93b73e9b Bug Fix, Default SG Rule Custom SG 2a90a6f0 Adds CLI support for ``glance md-object-property-show`` 75ed3158 Do not sort subnet dns_nameservers field a1f7bd28 Add support for showing requested az in output c657047d volume list: Don't call nova if no volume is attached Diffstat (except docs and test files) ------------------------------------- .git-ignore-blame-revs => .git-blame-ignore-revs | 1 + .pre-commit-config.yaml | 13 +- openstackclient/api/api.py | 15 +- openstackclient/api/compute_v2.py | 990 ++-- openstackclient/api/image_v1.py | 2 +- openstackclient/api/object_store_v1.py | 7 +- openstackclient/common/availability_zone.py | 2 +- openstackclient/common/clientmanager.py | 20 +- openstackclient/common/configuration.py | 2 +- openstackclient/common/extension.py | 2 +- openstackclient/common/limits.py | 98 +- openstackclient/common/module.py | 6 +- openstackclient/common/progressbar.py | 4 +- openstackclient/common/project_cleanup.py | 7 +- openstackclient/common/quota.py | 691 +-- openstackclient/common/versions.py | 2 +- openstackclient/compute/client.py | 123 +- openstackclient/compute/v2/agent.py | 124 +- openstackclient/compute/v2/aggregate.py | 18 +- openstackclient/compute/v2/console.py | 4 +- openstackclient/compute/v2/flavor.py | 12 +- openstackclient/compute/v2/host.py | 71 +- openstackclient/compute/v2/hypervisor.py | 7 +- openstackclient/compute/v2/keypair.py | 15 +- openstackclient/compute/v2/server.py | 874 ++-- openstackclient/compute/v2/server_backup.py | 2 +- openstackclient/compute/v2/server_group.py | 8 +- openstackclient/compute/v2/server_image.py | 2 +- openstackclient/compute/v2/server_migration.py | 7 +- openstackclient/compute/v2/service.py | 8 +- openstackclient/compute/v2/usage.py | 6 +- openstackclient/identity/common.py | 34 + openstackclient/identity/v2_0/catalog.py | 4 +- openstackclient/identity/v2_0/ec2creds.py | 8 +- openstackclient/identity/v2_0/endpoint.py | 8 +- openstackclient/identity/v2_0/project.py | 12 +- openstackclient/identity/v2_0/role.py | 10 +- openstackclient/identity/v2_0/role_assignment.py | 2 +- openstackclient/identity/v2_0/service.py | 8 +- openstackclient/identity/v2_0/token.py | 4 +- openstackclient/identity/v2_0/user.py | 14 +- openstackclient/identity/v3/access_rule.py | 6 +- .../identity/v3/application_credential.py | 172 +- openstackclient/identity/v3/catalog.py | 4 +- openstackclient/identity/v3/consumer.py | 8 +- openstackclient/identity/v3/credential.py | 10 +- openstackclient/identity/v3/domain.py | 10 +- openstackclient/identity/v3/ec2creds.py | 8 +- openstackclient/identity/v3/endpoint.py | 14 +- openstackclient/identity/v3/endpoint_group.py | 18 +- openstackclient/identity/v3/federation_protocol.py | 10 +- openstackclient/identity/v3/group.py | 16 +- openstackclient/identity/v3/identity_provider.py | 10 +- openstackclient/identity/v3/implied_role.py | 6 +- openstackclient/identity/v3/limit.py | 10 +- openstackclient/identity/v3/mapping.py | 10 +- openstackclient/identity/v3/policy.py | 10 +- openstackclient/identity/v3/project.py | 10 +- openstackclient/identity/v3/region.py | 10 +- openstackclient/identity/v3/registered_limit.py | 10 +- openstackclient/identity/v3/role.py | 14 +- openstackclient/identity/v3/role_assignment.py | 232 +- openstackclient/identity/v3/service.py | 98 +- openstackclient/identity/v3/service_provider.py | 8 +- openstackclient/identity/v3/tag.py | 4 +- openstackclient/identity/v3/token.py | 10 +- openstackclient/identity/v3/trust.py | 6 +- openstackclient/identity/v3/user.py | 224 +- openstackclient/image/client.py | 8 +- openstackclient/image/v1/image.py | 17 +- openstackclient/image/v2/cache.py | 22 +- openstackclient/image/v2/metadef_objects.py | 44 + .../image/v2/metadef_resource_type_association.py | 189 + openstackclient/image/v2/task.py | 2 +- openstackclient/network/common.py | 11 +- openstackclient/network/utils.py | 4 +- openstackclient/network/v2/address_group.py | 12 +- openstackclient/network/v2/address_scope.py | 10 +- .../network/v2/default_security_group_rule.py | 2 +- openstackclient/network/v2/floating_ip.py | 18 +- openstackclient/network/v2/floating_ip_pool.py | 21 +- .../network/v2/floating_ip_port_forwarding.py | 18 +- openstackclient/network/v2/ip_availability.py | 4 +- openstackclient/network/v2/l3_conntrack_helper.py | 10 +- openstackclient/network/v2/network.py | 16 +- openstackclient/network/v2/network_agent.py | 16 +- .../network/v2/network_auto_allocated_topology.py | 4 +- openstackclient/network/v2/network_flavor.py | 14 +- .../network/v2/network_flavor_profile.py | 8 +- openstackclient/network/v2/network_meter.py | 6 +- openstackclient/network/v2/network_meter_rule.py | 6 +- openstackclient/network/v2/network_qos_policy.py | 10 +- openstackclient/network/v2/network_qos_rule.py | 18 +- .../network/v2/network_qos_rule_type.py | 2 +- openstackclient/network/v2/network_rbac.py | 10 +- openstackclient/network/v2/network_segment.py | 10 +- .../network/v2/network_segment_range.py | 14 +- openstackclient/network/v2/network_trunk.py | 14 +- openstackclient/network/v2/port.py | 38 +- openstackclient/network/v2/router.py | 457 +- openstackclient/network/v2/security_group.py | 32 +- openstackclient/network/v2/security_group_rule.py | 33 +- openstackclient/network/v2/subnet.py | 23 +- openstackclient/network/v2/subnet_pool.py | 12 +- openstackclient/object/v1/account.py | 4 +- openstackclient/object/v1/container.py | 14 +- openstackclient/object/v1/object.py | 14 +- openstackclient/shell.py | 10 +- .../functional/compute/v2/test_server_event.py | 2 +- .../identity/v3/test_application_credential.py | 32 +- .../identity/v3/test_registered_limit.py | 2 +- .../functional/identity/v3/test_role_assignment.py | 210 + .../identity/v3/test_service_provider.py | 4 +- .../functional/network/v2/test_network_agent.py | 12 +- .../functional/network/v2/test_network_qos_rule.py | 8 +- .../functional/volume/v1/test_transfer_request.py | 4 +- .../functional/volume/v2/test_volume_backup.py | 4 +- .../functional/volume/v2/test_volume_snapshot.py | 4 +- .../functional/volume/v3/test_volume_snapshot.py | 4 +- .../unit/identity/v2_0/test_role_assignment.py | 8 +- .../identity/v3/test_application_credential.py | 447 +- .../unit/identity/v3/test_identity_provider.py | 16 +- .../unit/identity/v3/test_registered_limit.py | 25 +- .../unit/identity/v3/test_service_provider.py | 14 +- .../v2/test_metadef_resource_type_association.py | 131 + .../network/v2/test_default_security_group_rule.py | 76 +- .../unit/network/v2/test_floating_ip_compute.py | 78 +- .../unit/network/v2/test_floating_ip_network.py | 30 +- .../network/v2/test_floating_ip_pool_compute.py | 11 +- .../network/v2/test_floating_ip_pool_network.py | 8 +- .../network/v2/test_floating_ip_port_forwarding.py | 22 +- .../unit/network/v2/test_l3_conntrack_helper.py | 32 +- .../unit/network/v2/test_local_ip_association.py | 8 +- .../v2/test_network_auto_allocated_topology.py | 16 +- .../unit/network/v2/test_network_flavor_profile.py | 26 +- .../unit/network/v2/test_network_meter_rule.py | 22 +- .../unit/network/v2/test_network_qos_policy.py | 32 +- .../unit/network/v2/test_network_qos_rule_type.py | 14 +- .../unit/network/v2/test_network_segment_range.py | 24 +- .../network/v2/test_network_service_provider.py | 8 +- .../unit/network/v2/test_security_group_compute.py | 114 +- .../unit/network/v2/test_security_group_network.py | 30 +- .../network/v2/test_security_group_rule_compute.py | 102 +- .../network/v2/test_security_group_rule_network.py | 30 +- .../volume/v2/test_consistency_group_snapshot.py | 10 +- .../unit/volume/v2/test_volume_transfer_request.py | 44 - .../unit/volume/v3/test_block_storage_cleanup.py | 5 +- .../unit/volume/v3/test_block_storage_cluster.py | 21 +- .../unit/volume/v3/test_block_storage_log_level.py | 16 +- .../unit/volume/v3/test_block_storage_manage.py | 42 +- .../v3/test_block_storage_resource_filter.py | 38 +- .../unit/volume/v3/test_volume_group_snapshot.py | 48 +- .../unit/volume/v3/test_volume_transfer_request.py | 425 ++ openstackclient/volume/v1/qos_specs.py | 14 +- openstackclient/volume/v1/service.py | 4 +- openstackclient/volume/v1/volume.py | 24 +- openstackclient/volume/v1/volume_backup.py | 14 +- openstackclient/volume/v1/volume_snapshot.py | 16 +- .../volume/v1/volume_transfer_request.py | 10 +- openstackclient/volume/v1/volume_type.py | 14 +- openstackclient/volume/v2/backup_record.py | 4 +- openstackclient/volume/v2/consistency_group.py | 16 +- .../volume/v2/consistency_group_snapshot.py | 16 +- openstackclient/volume/v2/qos_specs.py | 14 +- openstackclient/volume/v2/service.py | 4 +- openstackclient/volume/v2/volume.py | 160 +- openstackclient/volume/v2/volume_backend.py | 4 +- openstackclient/volume/v2/volume_backup.py | 224 +- openstackclient/volume/v2/volume_host.py | 4 +- openstackclient/volume/v2/volume_snapshot.py | 16 +- .../volume/v2/volume_transfer_request.py | 42 +- openstackclient/volume/v2/volume_type.py | 96 +- openstackclient/volume/v3/service.py | 56 + openstackclient/volume/v3/volume.py | 971 ++++ openstackclient/volume/v3/volume_attachment.py | 60 +- openstackclient/volume/v3/volume_backup.py | 670 +++ openstackclient/volume/v3/volume_message.py | 2 +- openstackclient/volume/v3/volume_snapshot.py | 97 + .../volume/v3/volume_transfer_request.py | 233 + openstackclient/volume/v3/volume_type.py | 967 ++++ ...flavor-accepts-name-or-id-e9cecafcddf81cb2.yaml | 6 + ...d-cluster-to-service-list-5eab3e828de7547e.yaml | 8 + ...adef-object-property-show-4ab2c957451ea230.yaml | 5 + ...type-association-commands-4d373d7d8eca5d55.yaml | 17 + ...ma-affinity-policy-socket-5a986b14033e0f6e.yaml | 5 + ...snapshot-unmanage-command-d4c0c8fd8b638d48.yaml | 5 + ...add-volume-manage-command-088890446d0e81c7.yaml | 6 + ...d-volume-unmanage-support-9b7139e5e948de77.yaml | 5 + .../fix-backup-incremental-d1c1e6886cf32256.yaml | 7 + .../migrate-agent-commands-1c50ffcb75f91418.yaml | 4 + ...ication-credential-to-sdk-c79d8dfc3c8e1d9f.yaml | 9 + .../notes/migrate-host-set-438997eb6f81f2b1.yaml | 4 + .../migrate-limits-show-f586c9762dfd7d0c.yaml | 4 + ...te-role-assignment-to-sdk-e6e52bef467b4e4c.yaml | 4 + ...te-server-evacuate-to-sdk-a0415988ef5451b2.yaml | 4 + ...e-server-set-unset-to-sdk-ae32ebcced845b06.yaml | 4 + .../migrate-service-to-sdk-6ff62ebf7e41db7c.yaml | 10 + ...olume-attachment-commands-4309409bca1ca5d4.yaml | 4 + ...rk-quota-no-force-default-0975bdf15655070c.yaml | 6 + .../quota-set-default-option-bc26d37dc150533b.yaml | 7 + ...d-quota-show-class-option-2109a6ff7ac18e80.yaml | 8 + ...-volume-set-retype-policy-6bacb7dd92f1ad82.yaml | 8 + releasenotes/source/2024.1.rst | 6 + releasenotes/source/conf.py | 1 - releasenotes/source/index.rst | 1 + releasenotes/source/zed.rst | 2 +- requirements.txt | 4 +- setup.cfg | 61 +- tox.ini | 88 +- 369 files changed, 20471 insertions(+), 11654 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index a1b87a04..3c494d98 100644 --- a/requirements.txt +++ b/requirements.txt @@ -10 +10 @@ iso8601>=0.1.11 # MIT -openstacksdk>=2.0.0 # Apache-2.0 +openstacksdk>=3.3.0 # Apache-2.0 @@ -14 +13,0 @@ python-keystoneclient>=3.22.0 # Apache-2.0 -python-novaclient>=18.1.0 # Apache-2.0 @@ -15,0 +15 @@ python-cinderclient>=3.3.0 # Apache-2.0 +requests>=2.14.2 # Apache-2.0
participants (1)
-
no-reply@openstack.org