We are pumped to announce the release of: python-neutronclient 4.0.0: CLI and Client Library for OpenStack Networking This release is part of the mitaka release series. With source available at: http://git.openstack.org/cgit/openstack/python-neutronclient With package available at: https://pypi.python.org/pypi/python-neutronclient For more details, please see below and: http://launchpad.net/python-neutronclient/+milestone/4.0.0 Please report issues through launchpad: http://bugs.launchpad.net/python-neutronclient 4.0.0 ^^^^^ New Features ************ * Support os-client-config. OS_CLOUD environment variable is used for selecting named cloud configuration. * Support keystoneauth1 library which brings us better kyestone v3 support. * Client command extension now supports a child resource. * New CLI for VPNaaS multiple local subnets. * New CLI for VPNaaS endpoint group API. * New CLI for flavor argument to loadbalancer v2 create. * New CLI for Neutron flavor framework. * Support creating floating IP on a specific subnet ID. * NSX gateway extension adds new transport type values (ipsec_gre and ipsec_stt). * New router-update option to update static routes (--route and --no- routes). * New allowed-address-pairs option to port-update * Added new 'direct-physical' vnic-type option for port-create CLI command. Passing this particular value allows for a port to be create with the vnic-type used for assigning SR-IOV physical functions to instances. * CLI support for availability zones. * The "availability-zone-list" command provides a list of availability zones. * The "net-create" and "router-create" commands include a "-- availability-zone-hint" option. * The "agent-list" command output includes availability zones. Upgrade Notes ************* * Cisco-specific neutron client commands have been removed. These commands are ported to networking-cisco. * py26 support has been dropped. * XML request format support has been removed. * Remove Nuage-specific commands. Deprecation Notes ***************** * request-format option is deprecated. Bug Fixes ********* * Name is no longer looked up on RBAC policies, RBAC policies have no name field so the name query to the server was always returning all entries since the name filter was ignored. (bug 1517818) Other Notes *********** * Start using reno to manage release notes. * cliff-tablib has been removed from test dependencies. * Addition of CLI user documentation including output filters, extra options, and operation using os-client-config. Changes in python-neutronclient 3.1.0..4.0.0 -------------------------------------------- 2f075a8 Updated from global requirements 6f0307b Add some items to the release notes 722ce10 Devref: Transition to OpenStack Client be30c22 Updated from global requirements 199cb1e port: Add 'direct-physical' as a valid vnic-type 9371c45 Updated from global requirements c7586cd test: fix option in port test 95881a0 Add protocol value options to sg-rule-create 177d8a5 improve tox -e cover 787ba92 Use _i18n instead of i18n 022a895 Add method to retrieve loadbalancer stats b779855 Support for Name field in Members and HMs 7d838f1 Show availability_zone info in CLI neutron agent-list 0ca94a5 Updated from global requirements b7e3a21 Reworded nargs='?' explanation for better clarity 8d1990a Drop py33 support 9baa62c Fixed connection_limit and added UT 815934c Allow tenant_id positional in quota syntax ec4e482 Fix H405 violations ef5bd93 Updated from global requirements 35e7093 Deprecated tox -downloadcache option removed a0e2036 Remove nuage plugin from client 4c96d4a Adding missing headers to the devref documents 1774ac3 Allow lower case protocol values 074fb3d Allow passing version as '2' as well as '2.0' 54a4aea Remove XML support 709928b Add availability_zone CLI 88010ad Updated from global requirements f2cff4f Remove extra space from VPN validator exception messages a704812 Updated from global requirements b05d943 Add CLI option guideline 1b97f4b Add description of extra args in CLI a2f2908 Add os-client-config to CLI usage f5b4a27 Add more contents about CLI usage 800f35d Do not include reno releasenotes in normal documentation d82050c Add release notes for changes since 3.0.0 release 50311ab Fix a column name "protocol/port" to "port/protocol" 7ff7e76 Remove py26 support dd8f157 Reorganize documentation structure cc434c2 Updated from global requirements f1de157 Trivial: Fix a typo in class ListCommand a14a5f9 Use sphinx-build -W in [docs] target f8d5bbc Updated from global requirements 0042a39 Add 'baremetal' as an allowed vnic type 66b03a8 Add reno for release notes management 895b9b9 Move the old release notes to a separate file 529d3f5 Do not allow name lookups on RBAC policies 2941b0c Add route options to neutron router-update cf492e9 Revert "Revert "Remove Cisco-specific neutron client commands"" 82c9ab7 Improve neutron-client error message output 03e5e5f CLI support for VPNaaS multiple local subnets a46c126 Add flavor argument to loadbalancer v2 create 01bd100 Drop cliff-tablib from test-requirements.txt a150ce0 Add Neutron flavor framework CLI a77d314 Create floating IP on a specific subnet ID 2119b68 Documentation error in show_bandwidth_limit_rule 2eed8ea Use os-client-config and keystoneauth1 in shell 3d73610 Updated from global requirements 8e74198 Adding a generate_default_ethertype_function 51b2e71 Use clouds.yaml from devstack for functional tests 72a2d1f Updated from global requirements c1310f3 Updated from global requirements d908e97 Updated from global requirements 1ced38c Revert parent_id and obj_id parameter order 77d96db Updated from global requirements 18ce7d9 Fix arg order of assertEqual and use assertTrue 21abe4b Let devstack-gate handle the gate hook timeout 88eb584 Ensure to decode bytes or fail 4e94366 Updated from global requirements 3b1c1c2 Add allowed-address-pairs to port-update dc29068 neutron v2 command module cleanup (2) 647b084 neutron v2 command module cleanup #1 895680a CRUD for VPN endpoint group API 95915b4 Define non_admin_status_resources in each test a11a545 Fix extend_show parameter name fcf2897 Py3k compliance: check for bytes when making a string b915201 Enable VPN test cases 4f82e99 Change ignore-errors to ignore_errors Diffstat (except docs and test files) ------------------------------------- .coveragerc | 4 +- .gitignore | 1 + functional_creds.conf.sample | 8 - neutron_test.sh | 99 +++-- neutronclient/_i18n.py | 41 ++ neutronclient/client.py | 14 +- neutronclient/common/clientmanager.py | 3 + neutronclient/common/constants.py | 12 - neutronclient/common/exceptions.py | 6 +- neutronclient/common/serializer.py | 289 +------------- neutronclient/common/utils.py | 6 +- neutronclient/common/validators.py | 2 +- neutronclient/i18n.py | 25 +- neutronclient/neutron/client.py | 40 +- neutronclient/neutron/v2_0/__init__.py | 17 +- neutronclient/neutron/v2_0/address_scope.py | 2 +- neutronclient/neutron/v2_0/agent.py | 14 +- neutronclient/neutron/v2_0/agentscheduler.py | 6 +- neutronclient/neutron/v2_0/availability_zone.py | 38 ++ neutronclient/neutron/v2_0/contrib/_fox_sockets.py | 16 +- neutronclient/neutron/v2_0/credential.py | 73 ---- neutronclient/neutron/v2_0/flavor/__init__.py | 0 neutronclient/neutron/v2_0/flavor/flavor.py | 165 ++++++++ .../neutron/v2_0/flavor/flavor_profile.py | 99 +++++ neutronclient/neutron/v2_0/floatingip.py | 35 +- neutronclient/neutron/v2_0/fw/firewall.py | 14 +- neutronclient/neutron/v2_0/fw/firewallpolicy.py | 14 +- neutronclient/neutron/v2_0/fw/firewallrule.py | 20 +- neutronclient/neutron/v2_0/lb/healthmonitor.py | 16 +- neutronclient/neutron/v2_0/lb/member.py | 14 +- neutronclient/neutron/v2_0/lb/pool.py | 15 +- neutronclient/neutron/v2_0/lb/v2/healthmonitor.py | 32 +- neutronclient/neutron/v2_0/lb/v2/listener.py | 21 +- neutronclient/neutron/v2_0/lb/v2/loadbalancer.py | 57 ++- neutronclient/neutron/v2_0/lb/v2/member.py | 34 +- neutronclient/neutron/v2_0/lb/v2/pool.py | 15 +- neutronclient/neutron/v2_0/lb/vip.py | 14 +- neutronclient/neutron/v2_0/metering.py | 36 +- neutronclient/neutron/v2_0/netpartition.py | 52 --- neutronclient/neutron/v2_0/network.py | 22 +- neutronclient/neutron/v2_0/networkprofile.py | 148 ------- neutronclient/neutron/v2_0/nsx/networkgateway.py | 13 +- neutronclient/neutron/v2_0/nsx/qos_queue.py | 2 +- neutronclient/neutron/v2_0/policyprofile.py | 72 ---- neutronclient/neutron/v2_0/port.py | 98 +++-- .../neutron/v2_0/qos/bandwidth_limit_rule.py | 2 +- neutronclient/neutron/v2_0/qos/policy.py | 22 +- neutronclient/neutron/v2_0/qos/rule.py | 2 +- neutronclient/neutron/v2_0/quota.py | 31 +- neutronclient/neutron/v2_0/rbac.py | 20 +- neutronclient/neutron/v2_0/router.py | 38 +- neutronclient/neutron/v2_0/securitygroup.py | 79 ++-- neutronclient/neutron/v2_0/subnet.py | 43 +- neutronclient/neutron/v2_0/subnetpool.py | 20 +- neutronclient/neutron/v2_0/vpn/endpoint_group.py | 100 +++++ neutronclient/neutron/v2_0/vpn/ikepolicy.py | 31 +- .../neutron/v2_0/vpn/ipsec_site_connection.py | 123 +++--- neutronclient/neutron/v2_0/vpn/ipsecpolicy.py | 33 +- neutronclient/neutron/v2_0/vpn/utils.py | 14 +- neutronclient/neutron/v2_0/vpn/vpnservice.py | 25 +- neutronclient/shell.py | 278 +++---------- .../adv-svcs/test_readonly_neutron_vpn.py | 53 +++ .../unit/vpn/test_cli20_ipsec_site_connection.py | 215 +++++----- neutronclient/v2_0/client.py | 295 +++++++------- neutronclient/version.py | 3 +- releasenotes/notes/.placeholder | 0 ...availability-zone-support-8e66f55e46b7ef9a.yaml | 10 + ...physical-vnic-port-create-736d8b2600faf22b.yaml | 6 + .../notes/docs-improvements-17e31babe38e2962.yaml | 5 + .../drop-nuage-commands-df10aab6ccd77ed2.yaml | 3 + .../notes/drop-xml-support-41babecb1784d996.yaml | 5 + .../relnotes-from-3.0.0-d7306f5af5e3868d.yaml | 25 ++ .../notes/start-using-reno-9081b3e4c1951fdb.yaml | 3 + releasenotes/source/_static/.placeholder | 0 releasenotes/source/_templates/.placeholder | 0 releasenotes/source/conf.py | 276 +++++++++++++ releasenotes/source/index.rst | 13 + releasenotes/source/old_relnotes.rst | 29 ++ requirements.txt | 12 +- setup.cfg | 2 - test-requirements.txt | 8 +- tox.ini | 24 +- 150 files changed, 4508 insertions(+), 4134 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index 6a677ab..58b4593 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6 +6,2 @@ argparse -cliff>=1.14.0 # Apache-2.0 +cliff>=1.15.0 # Apache-2.0 +debtcollector>=0.3.0 # Apache-2.0 @@ -10,4 +11,5 @@ oslo.i18n>=1.5.0 # Apache-2.0 -oslo.serialization>=1.4.0 # Apache-2.0 -oslo.utils>=2.0.0 # Apache-2.0 -requests>=2.5.2 -python-keystoneclient>=1.6.0 +oslo.serialization>=1.10.0 # Apache-2.0 +oslo.utils>=3.2.0 # Apache-2.0 +os-client-config>=1.13.1 +keystoneauth1>=2.1.0 +requests!=2.9.0,>=2.8.1 diff --git a/test-requirements.txt b/test-requirements.txt index 160b246..1ef23ba 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -6 +5,0 @@ hacking<0.11,>=0.10.0 -cliff-tablib>=1.0 @@ -12 +11 @@ mock>=1.2 -oslosphinx>=2.5.0 # Apache-2.0 +oslosphinx!=3.4.0,>=2.5.0 # Apache-2.0 @@ -15 +14,2 @@ python-subunit>=0.0.18 -requests-mock>=0.6.0 # Apache-2.0 +reno>=0.1.1 # Apache2 +requests-mock>=0.7.0 # Apache-2.0 @@ -19 +19 @@ testtools>=1.4.0 -tempest-lib>=0.8.0 +tempest-lib>=0.12.0