We are psyched to announce the release of: python-openstackclient 2.1.0: OpenStack Command-line Client This release is part of the mitaka release series. With source available at: https://git.openstack.org/cgit/openstack/python-openstackclient Please report issues through launchpad: https://bugs.launchpad.net/python-openstackclient For more details, please see below. 2.1.0 ^^^^^ New Features ************ * Add support for the "port delete" command. [Bug 1519909 (https://bugs.launchpad.net/python-openstackclient/+bug/1519909)] * Add support for the "port show" command. [Bug 1519909 (https://bugs.launchpad.net/python-openstackclient/+bug/1519909)] * Add support for the "subnet list" command. [Bug 1523258 (https://bugs.launchpad.net/python-openstackclient/+bug/1523258)] * Add "project unset" command for Identity v2 [Bug 1486597 (https://bugs.launchpad.net/bugs/1486597)] * Add "image set --activate|--deactivate" options (Image v2 only) [Bug 1516661 (https://bugs.launchpad.net/bugs/1516661)] * Add "--project-domain" option to "image create" and "image set" commands (Image v2 only) [Bug 1517134 (https://bugs.launchpad.net/bugs/1517134)] * Add "router" commands "create", "delete", "list", "set", "show" [Bug 1519503 (https://bugs.launchpad.net/bugs/1519503)] * Add "--src-group" option to "security group rule create" to include a 'remote' security group rule. [Bug 1522969 (https://bugs.launchpad.net/bugs/1522969)] * Add volume support to *os availability zone list* [Bug 1532945 (https://bugs.launchpad.net/bugs/1532945)] * New *--compute* option to only list compute availability zones. * New *--volume* option to only list volume availability zones. * Add network support to *os availability zone list* [Bug 1534202 (https://bugs.launchpad.net/bugs/1534202)] * New *--network* option to only list network availability zones. * Add "--limit" option to "image list" to limit the number of images in output. [Bug 1540988 (https://bugs.launchpad.net/bugs/1540988)] * Add "--marker" option to "image list" to handle paginate requests. [Bug 1540988 (https://bugs.launchpad.net/bugs/1540988)] Bug Fixes ********* * Make "security group rule list" group argument optional to list all security groups [Bug 1519512 (https://bugs.launchpad.net/bugs/1519512)] * Add remote security group to *os security group rule list* [Bug 1520003 (https://bugs.launchpad.net/bugs/1520003)] * Change "server list --flavor" to now accept flavor ID or name [Bug 1521492 (https://bugs.launchpad.net/bugs/1521492)] * Change "server list --image" to now accept image ID or name [Bug 1521492 (https://bugs.launchpad.net/bugs/1521492)] * Change the "project set --domain" option to use the argument as a lookup for locating projects in non-default domains. [Bug 1524456 (https://bugs.launchpad.net/bugs/1524456)] * Fix case sensitivity when showing object-store properties. [Bug 1525805 (https://bugs.launchpad.net/bugs/1525805)] * Support non-interactive user password update [Bug 1531360 (https://bugs.launchpad.net/bugs/1531360)] Other Notes *********** * Change the *--owner* option to *--project* in *image create* and *image set* commands. *--owner* is deprecated and no longer documented but is still accepted; a warning message will be shown if it is used. [Bug 1527833 (https://bugs.launchpad.net/bugs/1527833)] Changes in python-openstackclient 2.0.0..2.1.0 ---------------------------------------------- 962389f Minor typo in help text 6500743 Fix a spell typos 4993693 Add --marker option to "image list" command 5812803 Add limit option to "image list" command 0b6fdcb Remove marker and loop from "image list" command e096965 Trivial: Reorder test class in test_volume.py into alphabetical order d324aa6 Fix wrong type of volume attachments in FakeVolume aba3fd9 Refactor TestVolumeCreate to use FakeVolume 580b0af Refactor security group delete to use SDK 981621e Add "os port show" command 4d332de Support listing network availability zones f36177e Trivial: Fix wrong comment in test_image.py a83c1f0 Network: Abstract get_body() out to be a private helper. a05d9fd Drop log_method decorator 2548419 Updated from global requirements 77ce1c1 Consume openstackclient.common.command in subnet/port 5d1a933 Fix showing network quotas for a project cd4998e Add missing release notes 258c110 log take_action parameters in a single place bca1a93 Revert "Skip identity v2 functional tests" 5032dbc Skip identity v2 functional tests c0d2120 Add availability zone support for router commands a6cd2dc Update translation setup 67ecf4e Add availability zone support for network commands 5903fff Allow wait_for_delete to work for all clients c43bdc1 Updated from global requirements a7e5faf Remove the Tuskar client db458d7 Use correct terminology for subnets 291e3a7 Updated from global requirements 299c571 Add releasenote for 'subnet list' command support 1db40e8 Add router functional tests ffcfff6 Subnet List c20f9a8 Updated from global requirements 69b8cde Refactor abstract columns and datalist out in image and object test cases 59b1bb1 Updated from global requirements 2b670af Refactor abstract columns and datalist out in compute test cases 50d54bb log_method: get logger from decorated method if unspecified 0e6b86a Set up logger of each command by metaclass 604d858 Refactor: Abstract columns and datalist out in volume test cases 3168e22 Add support to delete the ports 4d4368b Initialize activation status 5dbca5f Imported Translations from Zanata 86fcd67 Updated from global requirements a3c6171 Doc: Network is supported for extension object cf2de9a Change --owner to --project in image commands a8ec2ac Support listing volume availability zones 8417444 Refactor "os availability zone list" 030aee6 Changed the abstract columns and datalists from test cases of common and Identity bd1adaf Updated from global requirements 5cbecc1 Support non-interactive user password update a56fc34 Use assertTrue/False instead of assertEqual(T/F) ee0fb4a Replace assertEqual(*, None) with assertIsNone in tests 591d749 Updated from global requirements 5ff660f Further improve output for "os security group show" b299474 Delete the unused LOG configure code 57dac0b Refactor network endpoint enablement checking a2a63f1 Implementation for project unset cmd for python-openstackclient. 66931c6 Enabling domain lookup for project set v3 command eeeb9f7 Docstring should say 'default' if option is default 5f0147a Trivial: Remove useless string_to_bool() 8d718e9 Refactor: Initialize parser in setUp() in TestNonNegativeAction f0a3b17 Refactor: Initialize parser in setUp() in TestKeyValueAction 8210ba7 Replace assertEqual(None, *) with assertIsNone(*) 7a1a59e Functional tests for security group rule 0e38ef8 Improve output for "os security group show" d1311f9 Add all regions to cloud configuration 0ea5c03 Updated from global requirements 0a444fc Add owner validation for "openstack image create/set" 17f3685 TestServerGeneral: Add test for _prep_server_detail() b4660fe TestServerGeneral: Add test for _format_servers_list_networks() f552302 Trivial: Remove useless return from files in image and volume e590597 Trivial: Remove useless return from files in network 96cc5eb Add support to list all security group rules fe7d2d1 Replace assertEqual(None, *) with assertIsNone in tests 494659f Trivial: Remove useless return from files in compute. b3943d7 Add image re/deactivate commands 408dc7b Router: Add "router show" command using SDK 8a805da Router: Add "router set" command using SDK 556397a Refactor TestImageCreate with FakeImage class 1a3068d Updated from global requirements 3364855 Router: Add "router delete" command using SDK bd0bed7 Network: Improve no option test for "network create". 6158ebb Router: Add "router create" command using SDK 079123b Remote security group name not displayed for rule 74a6a81 when fetching object store properties use lower() 01ef42c Removes MANIFEST.in as it is not needed explicitely by PBR cb81232 Updated from global requirements 0a132d3 Deprecated tox -downloadcache option removed 3278b3a Router: Add "router list" command using SDK 185412f Router: Add class FakeRouter to test "router xxx" command 6f7c705 Trivial: Improve unclear comments in test_server.py a526777 Make --image parameter optional in "server rebuild" 4221bc2 Trivial: Fix parameter name typo in network.rst 2caf7b1 Trivial: Do not use plural format in command parameter in "network delete" 1cf3203 Map some of the SDK field names a8ba545 TestServerGeneral: Add test for _format_servers_list_power_state() 8485a52 Remove python-neutronclient requirement f65f82e Fix poorly named test mocks 7a42174 Remove old code after sdk integration 7aa6e5e SDK integration extensions and server create networks 6a5be8c Add unit test for TestServerList to test --long option. 50e52f3 Add multi deletion testcase for "openstack image delete" d377756 Refactor TestImageDelete with FakeImage 55480d0 Remove unuseful test data in test_netwrok.py 4be716e Migrate network client to SDK. 2a2cb4f Migrate "network show" command to use SDK. 45c644d Migrate "network set" command to use SDK. 511e862 Migrate "network delete" command to use SDK. 0b4fb0b Migrate "network create" command to use SDK. b98aee5 Fix "sevice show" cannot catch NoUniqueMatch Exception 2348617 The format_exc method does not take an exception 56150de Migrate "network list" command to new version using SDK. 85d6aee Trivial: Coding style fix in test_flavor.py ec79d33 Use FakeVolume in server test cases. a4696dc Use FakeImage in server test cases. 566388a Add source security group support to create rule 481b711 SDK integration: Add a temporary method to create network client using sdk. 6a3bc76 Introduce class FakeNetwork to fake one or more networks. 0d7be6f Use formatter in server.py for "server list" tests. 7d01a44 Updated from global requirements dd1ca68 Trivial: Import network.common as network_common in server.py 0bb645c Refactor network test: Remove unusful test code. 0cc1492 Refactor TestShowNetwork: Use TestNetwork in TestShowNetwork 84cf168 Refactor TestSetNetwork: Use TestNetwork in TestSetNetwork 697df67 Refactor TestListNetwork: Use TestNetwork in TestListNetwork d1fffb2 Refactor TestDeleteNetwork: Use TestNetwork in TestDeleteNetwork ee68558 Refactor TestCreateNetwork: Setup identity client in setUp() in TestCreateNetworkIdentityV2 16d07e7 Refactor TestCreateNetwork: Setup identity client in setUp() in TestCreateNetworkIdentityV3 3cc38d2 Refactor TestCreateNetwork: Setup cmd in setUp() in TestCreateNetworkIdentityV2 af6269d Refactor TestCreateNetwork: Setup cmd in setUp() in TestCreateNetworkIdentityV3 038334f Refactor TestCreateNetwork: Split TestCreateNetwork into two classes for identity v2 and v3 29b9945 Refactor network test: Introduce TestNetworkv2 and TestNetwork to improve unit test of network b4e88aa Trivial: Remove unuseful doc of "network list" command. ca76260 Trivial: Improve doc for "server create" command ad17d84 Updated from global requirements 197d86d Fix exception when doing volume set operation 6e74762 Add multi deletion testcase for openstack volume delete 3f7c01c Introduce FakeImage class 106f928 Support "server list" searching by both image name and ID. 0069a01 Support "server list" searching by both flavor name and ID. fad7126 Remove list output from "compute service set" aca279a Integrating mistralclient with openstackclient 54b0ef3 Use Block Storage instead of Volume a7ecec2 Add --volume to Image `create` Diffstat (except docs and test files) ------------------------------------- MANIFEST.in | 14 - README.rst | 4 +- openstackclient/api/network_v2.py | 59 -- openstackclient/api/object_store_v1.py | 2 +- openstackclient/api/utils.py | 4 +- openstackclient/common/availability_zone.py | 191 +++++ openstackclient/common/clientmanager.py | 20 + openstackclient/common/command.py | 45 ++ openstackclient/common/commandmanager.py | 4 - openstackclient/common/configuration.py | 10 +- openstackclient/common/extension.py | 18 +- openstackclient/common/limits.py | 11 +- openstackclient/common/module.py | 14 +- openstackclient/common/quota.py | 24 +- openstackclient/common/timing.py | 10 +- openstackclient/common/utils.py | 52 +- openstackclient/compute/v2/agent.py | 25 +- openstackclient/compute/v2/aggregate.py | 44 +- openstackclient/compute/v2/availability_zone.py | 102 --- openstackclient/compute/v2/console.py | 14 +- openstackclient/compute/v2/fixedip.py | 13 +- openstackclient/compute/v2/flavor.py | 35 +- openstackclient/compute/v2/floatingip.py | 28 +- openstackclient/compute/v2/floatingippool.py | 10 +- openstackclient/compute/v2/host.py | 15 +- openstackclient/compute/v2/hypervisor.py | 15 +- openstackclient/compute/v2/hypervisor_stats.py | 8 +- openstackclient/compute/v2/keypair.py | 25 +- openstackclient/compute/v2/security_group.py | 140 ++-- openstackclient/compute/v2/server.py | 173 ++--- openstackclient/compute/v2/service.py | 33 +- openstackclient/compute/v2/usage.py | 15 +- openstackclient/i18n.py | 2 +- openstackclient/identity/common.py | 5 + openstackclient/identity/v2_0/catalog.py | 15 +- openstackclient/identity/v2_0/ec2creds.py | 24 +- openstackclient/identity/v2_0/endpoint.py | 24 +- openstackclient/identity/v2_0/project.py | 79 +- openstackclient/identity/v2_0/role.py | 36 +- openstackclient/identity/v2_0/service.py | 24 +- openstackclient/identity/v2_0/token.py | 14 +- openstackclient/identity/v2_0/user.py | 26 +- openstackclient/identity/v3/catalog.py | 15 +- openstackclient/identity/v3/consumer.py | 27 +- openstackclient/identity/v3/credential.py | 27 +- openstackclient/identity/v3/domain.py | 26 +- openstackclient/identity/v3/ec2creds.py | 24 +- openstackclient/identity/v3/endpoint.py | 27 +- openstackclient/identity/v3/federation_protocol.py | 24 +- openstackclient/identity/v3/group.py | 35 +- openstackclient/identity/v3/identity_provider.py | 27 +- openstackclient/identity/v3/mapping.py | 25 +- openstackclient/identity/v3/policy.py | 27 +- openstackclient/identity/v3/project.py | 34 +- openstackclient/identity/v3/region.py | 27 +- openstackclient/identity/v3/role.py | 32 +- openstackclient/identity/v3/role_assignment.py | 11 +- openstackclient/identity/v3/service.py | 27 +- openstackclient/identity/v3/service_provider.py | 27 +- openstackclient/identity/v3/token.py | 25 +- openstackclient/identity/v3/trust.py | 24 +- openstackclient/identity/v3/unscoped_saml.py | 15 +- openstackclient/identity/v3/user.py | 60 +- openstackclient/image/v1/image.py | 101 +-- openstackclient/image/v2/image.py | 238 ++++-- .../locale/de/LC_MESSAGES/openstackclient.po | 600 +++++++++++++++ openstackclient/locale/openstackclient.pot | 829 +++++++++++++++++++++ .../locale/zh_TW/LC_MESSAGES/openstackclient.po | 495 ++++++++++++ openstackclient/network/client.py | 62 +- openstackclient/network/common.py | 83 ++- openstackclient/network/v2/network.py | 225 +++--- openstackclient/network/v2/port.py | 93 +++ openstackclient/network/v2/router.py | 295 ++++++++ openstackclient/network/v2/security_group.py | 40 + openstackclient/network/v2/subnet.py | 63 ++ openstackclient/object/client.py | 4 - openstackclient/object/v1/account.py | 16 +- openstackclient/object/v1/container.py | 34 +- openstackclient/object/v1/object.py | 34 +- openstackclient/shell.py | 2 +- openstackclient/volume/v1/backup.py | 28 +- openstackclient/volume/v1/qos_specs.py | 45 +- openstackclient/volume/v1/snapshot.py | 33 +- openstackclient/volume/v1/volume.py | 34 +- openstackclient/volume/v1/volume_type.py | 34 +- openstackclient/volume/v2/backup.py | 29 +- openstackclient/volume/v2/qos_specs.py | 45 +- openstackclient/volume/v2/snapshot.py | 32 +- openstackclient/volume/v2/volume.py | 36 +- openstackclient/volume/v2/volume_type.py | 34 +- .../de/LC_MESSAGES/python-openstackclient.po | 627 ---------------- .../locale/python-openstackclient.pot | 782 ------------------- .../zh_TW/LC_MESSAGES/python-openstackclient.po | 518 ------------- .../add-port-delete-command-4789d3881b186cfc.yaml | 5 + .../add-port-show-command-de0a599017189a21.yaml | 5 + .../add-subnet-list-command-970f4b397469bdc6.yaml | 5 + .../notes/bug-1486597-857e20262c038514.yaml | 5 + .../notes/bug-1516661-757ef629f899cca3.yaml | 5 + .../notes/bug-1517134-9efecb257910989c.yaml | 6 + .../notes/bug-1519503-978a68a54819dbbc.yaml | 5 + .../notes/bug-1519512-d20f44aca1f9e9b9.yaml | 6 + .../notes/bug-1520003-505af921c8afffc9.yaml | 5 + .../notes/bug-1521492-89b972c6362940a5.yaml | 5 + .../notes/bug-1521492-8cde2601591a8c78.yaml | 5 + .../notes/bug-1522969-63abf273c6e71a07.yaml | 6 + .../notes/bug-1524456-9967fac653c91cb2.yaml | 6 + .../notes/bug-1525805-122e6ce0c3cd4945.yaml | 5 + .../notes/bug-1527833-42cde11d28b09ac3.yaml | 7 + .../notes/bug-1531360-0f5c62d18088e5b5.yaml | 5 + .../notes/bug-1532945-1a5485b8d0ebddb8.yaml | 8 + .../notes/bug-1534202-1ba78f0bb744961f.yaml | 7 + .../notes/bug-1540988-17841cfd5accf7f5.yaml | 9 + requirements.txt | 28 +- setup.cfg | 26 +- test-requirements.txt | 41 +- tox.ini | 3 - 204 files changed, 8492 insertions(+), 6592 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index fbe3b8d..cc189ba 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,2 +4,2 @@ -pbr>=1.6 -six>=1.9.0 +pbr>=1.6 # Apache-2.0 +six>=1.9.0 # MIT @@ -7 +7 @@ six>=1.9.0 -Babel>=1.3 +Babel>=1.3 # BSD @@ -9,11 +9,11 @@ cliff>=1.15.0 # Apache-2.0 -keystoneauth1>=1.0.0 -os-client-config!=1.6.2,>=1.4.0 -oslo.config>=2.7.0 # Apache-2.0 -oslo.i18n>=1.5.0 # Apache-2.0 -oslo.utils>=2.8.0 # Apache-2.0 -python-glanceclient>=0.18.0 -python-keystoneclient!=1.8.0,>=1.6.0 -python-novaclient!=2.33.0,>=2.29.0 -python-cinderclient>=1.3.1 -python-neutronclient>=2.6.0 -requests>=2.8.1 +keystoneauth1>=2.1.0 # Apache-2.0 +openstacksdk>=0.7.4 # Apache-2.0 +os-client-config>=1.13.1 # Apache-2.0 +oslo.config>=3.4.0 # Apache-2.0 +oslo.i18n>=2.1.0 # Apache-2.0 +oslo.utils>=3.4.0 # Apache-2.0 +python-glanceclient>=1.2.0 # Apache-2.0 +python-keystoneclient!=1.8.0,!=2.1.0,>=1.6.0 # Apache-2.0 +python-novaclient!=2.33.0,>=2.29.0 # Apache-2.0 +python-cinderclient>=1.3.1 # Apache-2.0 +requests!=2.9.0,>=2.8.1 # Apache-2.0 diff --git a/test-requirements.txt b/test-requirements.txt index 7322c84..6a73cd9 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -6,4 +6,4 @@ hacking<0.11,>=0.10.0 -coverage>=3.6 -discover -fixtures>=1.3.1 -mock>=1.2 +coverage>=3.6 # Apache-2.0 +discover # BSD +fixtures>=1.3.1 # Apache-2.0/BSD +mock>=1.2 # BSD @@ -12,8 +12,8 @@ oslotest>=1.10.0 # Apache-2.0 -reno>=0.1.1 # Apache2 -requests-mock>=0.6.0 # Apache-2.0 -sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 -os-testr>=0.4.1 -testrepository>=0.0.18 -testtools>=1.4.0 -WebOb>=1.2.3 -tempest-lib>=0.10.0 +reno>=0.1.1 # Apache2 +requests-mock>=0.7.0 # Apache-2.0 +sphinx!=1.2.0,!=1.3b1,<1.3,>=1.1.2 # BSD +os-testr>=0.4.1 # Apache-2.0 +testrepository>=0.0.18 # Apache-2.0/BSD +testtools>=1.4.0 # MIT +WebOb>=1.2.3 # MIT +tempest-lib>=0.13.0 # Apache-2.0 @@ -22,9 +22,8 @@ tempest-lib>=0.10.0 -python-barbicanclient>=3.3.0 -python-congressclient>=1.0.0 -python-designateclient>=1.5.0 -python-heatclient>=0.6.0 -python-ironicclient>=0.8.0 -python-mistralclient>=1.0.0 -python-saharaclient>=0.10.0 -python-tuskarclient>=0.1.17 -python-zaqarclient>=0.3.0 +python-barbicanclient>=3.3.0 # Apache-2.0 +python-congressclient>=1.0.0 # Apache-2.0 +python-designateclient>=1.5.0 # Apache-2.0 +python-heatclient>=0.6.0 # Apache-2.0 +python-ironicclient>=1.1.0 # Apache-2.0 +python-mistralclient>=1.0.0 # Apache-2.0 +python-saharaclient>=0.10.0 # Apache-2.0 +python-zaqarclient>=0.3.0 # Apache-2.0