[release-announce] python-openstackclient 4.0.0 (train)

no-reply at openstack.org no-reply at openstack.org
Thu Sep 12 09:50:30 UTC 2019


We high-spiritedly announce the release of:

python-openstackclient 4.0.0: OpenStack Command-line Client

This release is part of the train 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://bugs.launchpad.net/python-openstackclient/+bugs

For more details, please see below.

4.0.0
^^^^^


New Features
************

* Add floating IP Port Forwarding commands: "floating ip port
  forwarding create", "floating ip port forwarding delete", "floating
  ip port forwarding list", "floating ip port forwarding set" and
  "floating ip port forwarding show".

* Add "--host" and "--hypervisor-hostname" options to "server
  create" command. [Blueprint add-host-and-hypervisor-hostname-flag-
  to-create- server (https://blueprints.launchpad.net/nova/+spec/add-
  host-and- hypervisor-hostname-flag-to-create-server)]

* Add "--host" option to "server migrate" command (cold migration)
  to specify the target host of the migration. Requires "--os-compute-
  api-version" 2.56 or greater to target a specific host for the
  (cold) migration. [Story 2003325
  (https://storyboard.openstack.org/#!/story/2003325)]

* Add "server resize confirm" and "server resize revert" commands.
  These replace the now deprecated "--confirm" and "--revert" options
  to the "server resize" commands, respectively.

* Add "--extra-dhcp-options" parameter to the "port create" command.
  The neutronclient "port-create" command can accept extra DHCP
  options, add it to the openstackclient in order to be consistent.

* Add "--ethertype" option to "security group rule list" command.
  Valid values are "ipv4" and "ipv6".

* Add "--reason" option to the "server lock" command to specify a
  reason when locking a server. Requires "–os-compute-api-version"
  2.73 or greater.

* Add "--locked" option to the "server list" command to list only
  locked servers. Requires "–os-compute-api-version" 2.73 or greater.

* Add "--unlocked" option to the "server list" command list only
  unlocked servers. Requires "–os-compute-api-version" 2.73 or
  greater. [Blueprint add-locked-reason
  (https://blueprints.launchpad.net/nova/+spec/add-locked-reason)]

* Add "--availability-zone" option to "server unshelve" command to
  enable users to specify an availability zone during unshelve of a
  shelved offloaded server. Note that it requires "--os-compute-api-
  version 2.77" or greater. [Blueprint support-specifying-az-when-
  restore-shelved-server (https://blueprints.launchpad.net/nova/+spec
  /support-specifying-az-when-restore-shelved-server)]

* Add "--boot-from-volume" option to the "server create" command to
  create a volume-backed server from the specified image with the
  specified size when used in conjunction with the "--image" or "--
  image-property" options. [Story 2006302
  (https://storyboard.openstack.org/#!/story/2006302)]

* The "server create --block-device-mapping" option now supports an
  "image" type in addition to "volume" and "snapshot". When specifying
  an image block device the compute service will create a volume from
  the image of the specified size and attach it to the server. [Story
  2006302 (https://storyboard.openstack.org/#!/story/2006302)]


Upgrade Notes
*************

* Security group rule listings now have the "Ethertype" field
  displayed by default to more easily differentiate between IPv4 and
  IPv6 rules. In addition, the "IP Range" field of a security group
  will be changed to "0.0.0.0/0" for IPv4 and "::/0" for IPv6 if no
  value is returned for the address, based on the Ethertype field of
  the rule. For further information see [Bug 1735575
  (https://bugs.launchpad.net/bugs/1735575)]

* Commands that assumed the default value of "--protocol" to be
  "tcp" now must include "--protocol tcp" explicitly in Network
  commands.

* Remove deprecated "ip fixed add|remove" commands. Use "server
  add|remove fixed ip" commands instead.

* Remove deprecated "ip floating add|remove" commands. Use "server
  add|remove floating ip" commands instead.

* Remove deprecated "role list" options "--project" and "--user".
  Use "role assignment list" options "--project" and "--user" instead.

* Remove deprecated "user role list" command. Use "role assignment
  list" options "--project" and "--user" instead.

* Remove deprecated "service create" option "--type". The type is
  supplied as a positional argument in The "service create --name
  <service-name> type" command.

* Remove "image create|set" option "--owner". Use "--project" option
  instead.

* Remove deprecated "port create|set" options "--device-id" and "--
  host-id". Use "--device" and "--host" options instead.

* Remove deprecated "router set" option "--clear-routes". Use "--no-
  route" option instead.

* Remove deprecated "security group rule create" options "--src-ip"
  and "--src-group". Use "--remote-ip" and "--remote-group" options
  instead.

* Remove deprecated "backup" commands. Use "volume backup" commands
  instead.

* Remove deprecated "snapshot" commands. Use "volume snapshot"
  commands instead.

* Remove deprecated "volume create" options "--project", "--user"
  and "--multi-attach".

* Change "volume transfer request accept" to use new required option
  " --auth-key" rather than a second positional argument.

* Volume commands now default to Volume API 3.  On older clouds that
  do not support Volume 3.x "--os-volume-api-version 2" or the adition
  of "volume_api_version: '2'" in "clouds.yaml" will be required.


Deprecation Notes
*****************

* Deprecate the "--confirm" and "--revert" options for the "server
  resize" command. They have been replaced with the "server resize
  confirm" and *server resize revert`* commands, respectively.


Bug Fixes
*********

* Change the default value of "--protocol" option to "any" in
  "security group rule create" command when using the Neutron v2 API.
  [Bug 1716789 (https://bugs.launchpad.net/bugs/1716789)]

* The "compute service set" command now properly handles "--os-
  compute-api-version" 2.53 and greater. [Story 2005349
  (https://storyboard.openstack.org/#!/story/2005349)]

* Compute API v2.40+ returns all matching entities rather than being
  limited to the API server configured maximum ("CONF.api.max_limit").
  [Story 2005099 (https://storyboard.openstack.org/#!/story/2005099)]


Other Notes
***********

* The "configuration show" command no longer requires
  authentication. This is useful in debugging cloud configurations,
  particularly auth configurations.

Changes in python-openstackclient 3.19.0..4.0.0
-----------------------------------------------

cb0c20b2 Update release table for Train and 4.0.0
de8ab5e8 More aggregate functional race chasing
037a8005 Add doc and relnote for review 639652
a96089ff Default to Cinder v3 API
ee487772 Clean up app initialization and config
dd1ce370 Follow-up: fix the invalid releasenote link
fcd46acb Microversion 2.77: Support Specifying AZ to unshelve
7549d260 Bump lower constraint of python-zunclient
31c47ade Remove races in floating ip functional tests
a88e9587 Bump min osc-lib to 1.14.0
6ee7b8d1 Format location columns in network commands
f044016e Add floating IP Port Forwarding commands
6419533f Bump hacking version
6fcc2608 Remove token_endpoint auth type
03a2accb Format aggregate command fields and de-race functional tests
75f0f82c Add CLI argument tests before making changes
3b2863e3 Fix functional.base.TestCase.openstack() to optionally omit --os-auth-type
1557afb5 Document 2.53 behavior for compute service list/delete
b9d63105 Add openstack server create --boot-from-volume option
c28ed25e Fix <id> description for --block-device-mapping
6a199bd1 Support type=image with --block-device-mapping option
4bd53dc1 Fix compute service set handling for 2.53+
7561e062 Add 'openstack server resize (confirm|revert)' commands
865e1829 Make configuration show not require auth
ba0a8e93 Fix typo: "to and endpoint"
1bad2cb3 Fix module paths for volumev3 volume backup commands
68809fce openstack port create support --extra-dhcp-option
b52a831f Mention compute service set --up|--down requires 2.11 or greater
c609b98c Update api-ref location
340f25fa Add host and hypervisor_hostname to create servers
969e6abd Support IPv6 addresses better
b41d7518 Add Python 3 Train unit tests
879f8207 docs: clarify compute service --service option
d16d98b2 Update the constraints url
5986f473 Add Python 3 Train unit tests
bfc34e11 Fix BFV server list handling with --name-lookup-one-by-one
4cd61430 Use cliff formattable columns in volume v2 commands
1af3056e Use cliff formattable columns in volume v1 commands
c2630ae9 Use cliff formattable columns in object storage commands
8d63e3f0 Use cliff formattable columns in image commands
fa5046a3 Use cliff formattable columns in identity commands
187be0ac Microversion 2.73: Support adding the reason behind a server lock
1aad9434 Allow "server migrate" (not live) to take "--host" option
3df5f92b Add server add/remove volume description for microversion 2.20
eb399c52 Add server event command documentation for compute API 2.21
e76e10c0 Remove deprecated volume commands and args
5a0fc68a Remove deprecated network options
67dadda7 Remove deprecated image commands
f9fdc296 Remove deprecated identity commands and args
b7742b59 Remove deprecated compute commands
aabc67f3 Rename review.openstack.org to review.opendev.org
c44f26eb Use cliff formattable columns in network commands
33a25561 Change default security group protocol to 'any'


Diffstat (except docs and test files)
-------------------------------------

.zuul.yaml                                         |   3 +-
README.rst                                         |  16 +-
.../cli/command-objects/floating-ip-pool.rst       |   2 +-
.../floating-ip-port-forwarding.rst                | 173 +++++
.../cli/command-objects/security-group-rule.rst    |  19 +-
lower-constraints.txt                              |  13 +-
openstackclient/api/auth_plugin.py                 |  61 --
openstackclient/api/compute_v2.py                  |  38 +-
openstackclient/common/client_config.py            |  71 --
openstackclient/common/configuration.py            |  20 +-
openstackclient/compute/v2/aggregate.py            |  46 +-
openstackclient/compute/v2/fixedip.py              | 100 ---
openstackclient/compute/v2/flavor.py               |   2 +-
openstackclient/compute/v2/floatingip.py           |  97 ---
openstackclient/compute/v2/hypervisor.py           |   2 +-
openstackclient/compute/v2/server.py               | 321 +++++++--
openstackclient/compute/v2/server_event.py         |  12 +-
openstackclient/compute/v2/service.py              |  86 ++-
openstackclient/identity/v2_0/catalog.py           |  34 +-
openstackclient/identity/v2_0/project.py           |   3 +-
openstackclient/identity/v2_0/role.py              | 148 +---
openstackclient/identity/v2_0/service.py           |  30 +-
openstackclient/identity/v2_0/user.py              |  41 +-
openstackclient/identity/v3/catalog.py             |  24 +-
openstackclient/identity/v3/identity_provider.py   |   5 +-
openstackclient/identity/v3/role.py                | 125 +---
openstackclient/image/v1/image.py                  |  63 +-
openstackclient/image/v2/image.py                  |  56 +-
openstackclient/network/v2/address_scope.py        |  10 +-
openstackclient/network/v2/floating_ip.py          |   2 +
.../network/v2/floating_ip_port_forwarding.py      | 371 +++++++++++
openstackclient/network/v2/ip_availability.py      |   5 +-
openstackclient/network/v2/network.py              |  31 +-
openstackclient/network/v2/network_agent.py        |  24 +-
.../network/v2/network_auto_allocated_topology.py  |  17 +-
openstackclient/network/v2/network_flavor.py       |  10 +-
.../network/v2/network_flavor_profile.py           |  10 +-
openstackclient/network/v2/network_meter.py        |  10 +-
openstackclient/network/v2/network_meter_rule.py   |  10 +-
openstackclient/network/v2/network_qos_policy.py   |  10 +-
openstackclient/network/v2/network_qos_rule.py     |  10 +-
.../network/v2/network_qos_rule_type.py            |   8 +-
openstackclient/network/v2/network_rbac.py         |  10 +-
openstackclient/network/v2/network_segment.py      |  10 +-
.../network/v2/network_segment_range.py            |  11 +-
openstackclient/network/v2/port.py                 |  97 ++-
openstackclient/network/v2/router.py               |  67 +-
openstackclient/network/v2/security_group.py       |  18 +-
openstackclient/network/v2/security_group_rule.py  | 134 ++--
openstackclient/network/v2/subnet.py               |  31 +-
openstackclient/network/v2/subnet_pool.py          |   6 +-
openstackclient/object/v1/account.py               |   5 +-
openstackclient/object/v1/container.py             |   3 +-
openstackclient/object/v1/object.py                |   3 +-
openstackclient/shell.py                           |  42 +-
.../functional/network/v2/test_floating_ip.py      | 120 ++--
.../functional/network/v2/test_network_agent.py    |   4 +-
.../functional/network/v2/test_subnet_pool.py      |  16 +-
.../v2/{test_backup.py => test_volume_backup.py}   |   4 +-
.../{test_snapshot.py => test_volume_snapshot.py}  |   8 +-
.../{test_snapshot.py => test_volume_snapshot.py}  |   2 +-
.../unit/identity/v3/test_identity_provider.py     |  20 +-
.../network/v2/test_floating_ip_port_forwarding.py | 502 ++++++++++++++
.../unit/network/v2/test_security_group_compute.py |  15 +-
.../unit/network/v2/test_security_group_network.py |  20 +-
.../network/v2/test_security_group_rule_compute.py |  87 +--
.../network/v2/test_security_group_rule_network.py |  49 +-
.../v1/{test_backup.py => test_volume_backup.py}   |  24 +-
.../v2/{test_backup.py => test_volume_backup.py}   |  20 +-
openstackclient/volume/client.py                   |   2 +-
openstackclient/volume/v1/qos_specs.py             |  13 +-
openstackclient/volume/v1/snapshot.py              | 318 ---------
openstackclient/volume/v1/volume.py                |  62 +-
.../volume/v1/{backup.py => volume_backup.py}      | 130 +---
openstackclient/volume/v1/volume_snapshot.py       |  54 +-
.../volume/v1/volume_transfer_request.py           |  22 +-
openstackclient/volume/v1/volume_type.py           |  60 +-
openstackclient/volume/v2/consistency_group.py     |   3 +-
openstackclient/volume/v2/qos_specs.py             |  13 +-
openstackclient/volume/v2/snapshot.py              | 351 ----------
openstackclient/volume/v2/volume.py                |  98 ++-
.../volume/v2/{backup.py => volume_backup.py}      | 130 +---
openstackclient/volume/v2/volume_snapshot.py       |  54 +-
.../volume/v2/volume_transfer_request.py           |  23 +-
openstackclient/volume/v2/volume_type.py           |  63 +-
...p-portforwarding-commands-6e4d8ace698ee308.yaml |   9 +
...ame-flag-to-create-server-cb8b39a9f9311d42.yaml |   6 +
...-server-migrate-with-host-4884a71903c5c8a9.yaml |   8 +
...e-confirm-revert-commands-98854ca98965432a.yaml |  12 +
...e-with-extra-dhcp-options-c2c40e4002b52e2a.yaml |   6 +
...port-security-group-rules-95272847349982e5.yaml |  14 +
.../bp-add-locked-reason-425efd2def1144f1.yaml     |  13 +
...en-restore-shelved-server-16e864223d51b50a.yaml |   7 +
.../notes/bug-1716789-abfae897b7e61246.yaml        |  10 +
.../notes/config-show-00512dc60882e5c0.yaml        |   6 +
.../notes/osc4-compute-09246008eff260cb.yaml       |   8 +
.../notes/osc4-identity-6564257c67d43106.yaml      |  12 +
.../notes/osc4-image-e922ee6f8e028648.yaml         |   5 +
.../notes/osc4-network-db2aed696d964ca6.yaml       |  12 +
.../notes/osc4-volume-470422e5a453310e.yaml        |  14 +
...-compute-service-set-2.53-3d2db875154e633a.yaml |   6 +
...6302-add-boot-from-volume-cd411b1ca776bb3c.yaml |   8 +
...02-support-bdm-type-image-0becfb63bd4fb969.yaml |   8 +
.../notes/usage-list-all-49ca7a62c50e71d3.yaml     |   6 +
.../notes/volume-v3-default-0ffa9bebb43b5057.yaml  |   7 +
releasenotes/source/index.rst                      |   2 +
requirements.txt                                   |   4 +-
setup.cfg                                          |  80 +--
test-requirements.txt                              |   5 +-
tox.ini                                            |  15 +-
188 files changed, 4832 insertions(+), 5695 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index aa5debf4..67139bbd 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -11 +11 @@ openstacksdk>=0.17.0 # Apache-2.0
-osc-lib>=1.10.0 # Apache-2.0
+osc-lib>=1.14.0 # Apache-2.0
@@ -16 +16 @@ python-keystoneclient>=3.17.0 # Apache-2.0
-python-novaclient>=10.0.0 # Apache-2.0
+python-novaclient>=15.0.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 4cb66cfd..4db30c7f 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -4,2 +4 @@
-hacking!=0.13.0,<0.14,>=0.12.0 # Apache-2.0
-
+hacking>=1.1.0,<1.2.0 # Apache-2.0
@@ -42 +41 @@ python-zaqarclient>=1.0.0 # Apache-2.0
-python-zunclient>=1.3.0 # Apache-2.0
+python-zunclient>=3.4.0 # Apache-2.0






More information about the Release-announce mailing list