We are pumped to announce the release of: python-openstackclient 3.18.0: OpenStack Command-line Client This release is part of the stein release series. The source is available from: https://git.openstack.org/cgit/openstack/python-openstackclient Download the package from: https://pypi.org/project/python-openstackclient Please report issues through launchpad: https://storyboard.openstack.org/#!/project/975 For more details, please see below. 3.18.0 ^^^^^^ New Features ************ * Add "--member-status" option to "image list" command. * From microversion 2.69 the results of "openstack server list" and "openstack server show" may contain missing information in their outputs when there are partial infrastructure failure periods in the deployment. See Handling Down Cells for more information on the missing keys/info. (https://developer.openstack.org/api-guide/compute/down_cells.html) * Add "network segment range create", "network segment range delete", "network segment range list", "network segment range show" and "network segment range set" commands. [Blueprint network- segment- range-management (https://blueprints.launchpad.net/neutron/+spec /network-segment- range-management)] * Add "--attached" and "--detached" options to "volume set" command to set the volume status in the database. This is the functional equivalent to "cinder reset-state --attach-status". [bug 1745699 (https://bugs.launchpad.net/python-openstackclient/+bug/1745699) * Add "--dns-domain" and "--dns-name" options to the "floating ip create" commands. These options set the DNS domain and name for the floating IP. Check backend available extension and return an error message if it is missing (instead of a Bad Request HTTP 400). [Bug 1547736 (https://storyboard.openstack.org/#!/story/1547736)] * Add "--long" option to the "floating ip list" command. This adds "DNS Name" and "DNS Domain" columns to the floating IP list. [Bug 1547736 (https://storyboard.openstack.org/#!/story/1547736)] * The "image list" command now properly filters images on multiple "-- property" options. [Bug 2004290 (https://storyboard.openstack.org/#!/story/2004290)] * Add support for list detailed "quota" usage for project. This can be done by passing "--detail" parameter to *quota list* command. [Bug 1716043 (https://bugs.launchpad.net/neutron/+bug/1716043)] * Add "--name-lookup-one-by-one" option to the "server list" command that is (mutually exclusive with "-n | --no-name-lookup"). When provided, the names of images and flavors will be resolved one by one only for those images and flavors that are needed to display the obtained list of servers instead of fetching all the images and flavors. Depending on amount of images in your deployment this can speed up the execution of this command. * When given "--image" or "--flavor" argument, the "server list" command now resolves only single image or flavor instead of fetching all the images or flavors for name lookup purposes. * Add dns-domain support for network commands. The new parameter "-- dns-domain" is added to the "network create" and "network set" commands. This parameter sets the domain name for the network. Check backend available extension and return an error message if it is missing (instead of a Bad Request HTTP 400). * Add options "--sign-key-path" and "--sign-cert-id" to the "image create" command. Tthe image must be present on disk, therefore the "file" option is required: "image create --file <filename> --sign-key-path <key-path> --sign- cert-id <secret-id>". A prompt for a password ensures, that the private key can be protected too. [Bug 2002128 (https://storyboard.openstack.org/#!/story/2002128)] * Add support for attaching and removing qos policy to router gateway IPs. Add "--qos-policy" and "--no-qos-policy" options to the "router set" command. Add "--qos-policy" option to the "router unset" command. * Add "--property" option to the "server rebuild" command, to provide the ability to specify properties of the rebuilt instance. [Story 2003979 (https://storyboard.openstack.org/#!/story/2003979)] * Add "--key-name" option to "server rebuild" command to set keypair of the server. Note that it requires --os-compute-api-version 2.54 or later. * Add "--key-unset" option to "server rebuild" command to unset keypair. Note that it requires --os-compute-api-version 2.54 or later. * Add "--enable-uplink-status-propagation" option and "--disable- uplink-status-propagation" option to "port create" command. * Add "openstack volume backend capability show <host>" command that provides a list of all capabilities that can be configured for the requested backend. The required *<host>* parameter takes the form *host@backend-name*. * Add "openstack volume backend pool list" command that provides a list of all backend storage pools. The optional "--long" parameter includes some basic configuration and stats for each pool. Upgrade Notes ************* * The "volume migrate --unlock" argument did not actually do anything and has now been removed. Deprecation Notes ***************** * The "--project" and "--user" options for the "volume create" command have been deprecated. They are deprecated because Cinder's volume create API ignores the corresponding API inputs. Bug Fixes ********* * Fix "volume create" by removing two broken options. The "-- project" and "--user" options were intended to specify an alternate project and/or user for the volume, but the Volume service's API does not support this behavior. This caused the volume to be created, but without the expected project/user values. However, an alternate project and/or user may be specified using identity overrides (e.g. --os-username, --os-project-id). * The "openstack server add floating ip" command has been fixed to handle servers with multiple ports attached. Previously, the command was using the first port in the port list when attempting to associate the floating ip. This could fail if the server had multiple ports and the first port in the list was not attached to an external gateway. Another way it could fail is if the "--fixed-ip- address" option was passed and the first port did not have the specified fixed IP address attached to it. Now, the "openstack server add floating ip" command will find the port attached to the specified "--fixed-ip-address", if provided, else it will try multiple ports until one is found attached to an external gateway. If a suitable port is not found in the port list, an error will be returned. Changes in python-openstackclient 3.17.0..3.18.0 ------------------------------------------------ 626a3a0 Mention compute API 2.50 in openstack quota show --class d52920b Add network segment range command object 239b103 API microversion 2.69: Handles Down Cells c79de8a Paginate over usage list to return all usages e776a4f Add --attached / --detached parameter to volume set 24255ad Fix: Restore output 'VolumeBackupsRestore' object is not iterable 6475882 Typo fix d43178c Disabling c-backup service for osc-functional-devstack-tips job 444a40c Add possibility to filter images using member_status 75cba9d Add support for get details of Quota 4d76d75 Fix help message of image add project 55cbbbe Fix help message of image add project fa3c5e6 add python 3.7 unit test job 05521bf Remove str() when setting network objects names 0a18790 Add py36 env 811b001 This fix removes an erroneous underscore found within the function named test_snapshot_delete within test_snapshot.py found in both volume v1 and v2 of python-openstackclient. 1a0bef2 More state handling in volume transfer requests functional tests 7276610 fix multiple server delete produce multiple new lines b8438ad Add floating IP filter to floating IP list command 2dd5393 Use os-cloud instead of OS env vars for functional tests aaa1060 Add osc repo to the base job definition 7fb866a Remove testr.conf as it's been replaced by stestr f9df3ce More volume functional test fixes fd23025 Supports router gateway IP QoS c82f423 Support enable/disable uplink status propagation 8be53a5 Change openstack-dev to openstack-discuss 029c148 Add Python 3.6 classifier to setup.cfg 8120cb8 Use devstack functional base job 5bec3b7 Replace assertEqual(True/False, expr) with assertTrue/assertFalse 4f66f66 Fix i18n issue b90c780 Add volume backup import/export commands eb06a24 Modify the help message for 'registered limit set' 81fd5c9 Updated the take_actions for unified limits 21e4c87 image/v2: support multiple property filters 013c9a4 Handle multiple ports in AddFloatingIP e782f49 Add --name-lookup-one-by-one option to server list 4c387fe trivial: modify spelling error of project f00ffeb Remove invalid 'unlock-volume' migration arg dd958bc Update the Neutron CLI decoder document 746d424 Update release note version reference table dfd37a2 Make use of keystoneauth service-type filtering for versions 4173690 Improve document 'openstack complete' e0615e8 Address issues from volume backend commands f82c5b8 Add --key-name and --key-unset option for server rebuild API. a4fcae2 trivial: remove commented-out code 341333b Update the URL in doc a5865b1 Partially Revert "Add command to unset information from Subnet-pools" 577e2e8 Mention 2.51 in help for openstack server event show 181f143 Add note about version 2.5 when listing servers using --ip6 8db3933 Don't display router's is_ha and is_distributed attributes always 1008544 Default --nic to 'auto' if creating a server with >= 2.37 Diffstat (except docs and test files) ------------------------------------- .testr.conf | 9 - .zuul.yaml | 21 +- .../cli/command-objects/network_segment_range.rst | 168 +++++++ lower-constraints.txt | 4 +- openstackclient/api/api.py | 2 - openstackclient/api/compute_v2.py | 2 +- openstackclient/common/quota.py | 236 ++++++--- openstackclient/common/versions.py | 16 +- openstackclient/compute/v2/server.py | 182 +++++-- openstackclient/compute/v2/server_event.py | 6 +- openstackclient/compute/v2/usage.py | 50 +- openstackclient/identity/common.py | 19 + openstackclient/identity/v3/limit.py | 29 +- openstackclient/identity/v3/registered_limit.py | 65 ++- openstackclient/image/v2/image.py | 33 +- openstackclient/network/v2/floating_ip.py | 8 + openstackclient/network/v2/network.py | 4 +- openstackclient/network/v2/network_agent.py | 2 +- openstackclient/network/v2/network_qos_policy.py | 2 +- .../network/v2/network_segment_range.py | 458 +++++++++++++++++ openstackclient/network/v2/port.py | 20 +- openstackclient/network/v2/router.py | 79 ++- openstackclient/network/v2/subnet.py | 2 +- openstackclient/network/v2/subnet_pool.py | 25 +- .../identity/v3/test_registered_limit.py | 34 +- .../functional/network/v2/test_address_scope.py | 25 +- .../functional/network/v2/test_network_flavor.py | 10 +- .../network/v2/test_network_flavor_profile.py | 30 +- .../functional/network/v2/test_network_meter.py | 28 +- .../network/v2/test_network_segment_range.py | 145 ++++++ .../functional/volume/v2/test_transfer_request.py | 106 ++-- .../unit/network/v2/test_floating_ip_network.py | 17 + .../unit/network/v2/test_network_segment_range.py | 552 +++++++++++++++++++++ openstackclient/volume/v2/backup.py | 4 +- openstackclient/volume/v2/backup_record.py | 82 +++ openstackclient/volume/v2/volume.py | 45 +- playbooks/osc-devstack/post.yaml | 4 - playbooks/osc-devstack/pre.yaml | 8 - playbooks/osc-devstack/run.yaml | 5 - .../add-member-status-filter-2e118b2c93151223.yaml | 3 + .../bp-handling-down-cell-ab8af2897f1a8c85.yaml | 9 + ...-segment-range-management-0abf03fe03eea149.yaml | 6 + .../notes/bug-1519502-f72236598d14d350.yaml | 2 +- .../notes/bug-1745699-afa7318b9dc96696.yaml | 7 + .../floating-ip-multi-port-9779e88f590cae23.yaml | 14 + ...ilter-multiple-properties-03c51d43131ee3b6.yaml | 6 + ...tailed-quota-informations-1755129e1c68a252.yaml | 6 + .../name-lookup-one-by-one-e0f15f4eab329b19.yaml | 14 + .../router-gateway-IP-QoS-c8ba95e180bca05f.yaml | 9 + ...rebuild-with-keypair-name-83c1aa20db136d91.yaml | 6 + ...uplink_status_propagation-4d37452bcf03e0f8.yaml | 5 + .../notes/unlock-volume-a6990fc3bf1f5f67.yaml | 5 + .../notes/volume-backend-c5faae0b31556a24.yaml | 8 +- .../volume-backup-record-9f5987c45e294dc6.yaml | 15 + releasenotes/source/index.rst | 2 + requirements.txt | 4 +- setup.cfg | 12 +- tox.ini | 8 +- 96 files changed, 3598 insertions(+), 814 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index 205d4e6..aa5debf 100644 --- a/requirements.txt +++ b/requirements.txt @@ -9 +9 @@ cliff!=2.9.0,>=2.8.0 # Apache-2.0 -keystoneauth1>=3.4.0 # Apache-2.0 +keystoneauth1>=3.6.2 # Apache-2.0 @@ -16 +16 @@ python-keystoneclient>=3.17.0 # Apache-2.0 -python-novaclient>=9.1.0 # Apache-2.0 +python-novaclient>=10.0.0 # Apache-2.0