We are pumped to announce the release of: neutron-lib 2.20.0: Neutron shared routines and utilities This release is part of the yoga release series. The source is available from: https://opendev.org/openstack/neutron-lib Download the package from: https://pypi.org/project/neutron-lib Please report issues through: https://bugs.launchpad.net/neutron/+bugs For more details, please see below. 2.20.0 ^^^^^^ New Features ************ * Add "connectivity" property to "MechanismDriver". For more information, see [Boot a VM with an unaddressed port (https://blueprints.launchpad.net/nova/+spec/boot-vm-with- unaddressed-port)]. * Added API definition for "qos-rule-type-filter" extension that adds two new parameters to QoS rule type API: "all_supported" that is a flag to filter all supported QoS rule types by at least one loaded mechanism driver; "all_rules" that is a flag to filter all implemented QoS rule types in the Neutron server. * The API definitions of "tap-as-a-service", "taas" and "vlan_filter", are now available in "neutron_lib.api.definitions". This includes "tap_services", "tap_flows" and "vlan_filter" extension to tap_flows. * Add "remote-managed" VNIC type for ports such as off-path SmartNIC DPU ports. Bug Fixes ********* * Enforce policy for 'qos_policy_id' attribute of port, network and fip so only authorized users can set/unset it. For more info see bug LP#1957175 (https://bugs.launchpad.net/bugs/1957175). Changes in neutron-lib 2.19.0..2.20.0 ------------------------------------- c7a2f76 api-ref for ndp proxy 683bca8 Add filter flags for QoS rule types 18a6911 Add VNIC_REMOTE_MANAGED for off-path backends c2166f9 Add "connectivity" property to "MechanismDriver" 901589c Move API definitions of taas to neutron-lib cf54989 Enforce policy for qos_policy_id attribute 8f066c4 Add api-ref for tap service and tap flow Diffstat (except docs and test files) ------------------------------------- api-ref/source/v2/index.rst | 5 + api-ref/source/v2/parameters.yaml | 284 +++++++++++++- api-ref/source/v2/qos.inc | 8 + api-ref/source/v2/router-ndp-proxy.inc | 251 ++++++++++++ api-ref/source/v2/routers.inc | 13 + .../ndp_proxies/ndp-proxies-list-response.json | 30 ++ .../ndp_proxies/ndp-proxy-create-request.json | 9 + .../ndp_proxies/ndp-proxy-create-response.json | 15 + .../ndp_proxies/ndp-proxy-show-response.json | 15 + .../ndp_proxies/ndp-proxy-update-request.json | 6 + .../ndp_proxies/ndp-proxy-update-response.json | 15 + .../source/v2/samples/taas/taf-create-request.json | 8 + .../v2/samples/taas/taf-create-response.json | 14 + .../source/v2/samples/taas/taf-list-response.json | 13 + .../source/v2/samples/taas/taf-show-response.json | 14 + .../source/v2/samples/taas/taf-update-request.json | 5 + .../v2/samples/taas/taf-update-response.json | 14 + .../source/v2/samples/taas/tas-create-request.json | 6 + .../v2/samples/taas/tas-create-response.json | 11 + .../source/v2/samples/taas/tas-list-response.json | 11 + .../source/v2/samples/taas/tas-show-response.json | 11 + .../source/v2/samples/taas/tas-update-request.json | 5 + .../v2/samples/taas/tas-update-response.json | 11 + api-ref/source/v2/taas.inc | 430 +++++++++++++++++++++ neutron_lib/api/definitions/__init__.py | 6 + neutron_lib/api/definitions/base.py | 5 + neutron_lib/api/definitions/portbindings.py | 3 +- neutron_lib/api/definitions/qos.py | 2 + neutron_lib/api/definitions/qos_fip.py | 1 + .../api/definitions/qos_rule_type_filter.py | 55 +++ neutron_lib/api/definitions/taas.py | 89 +++++ neutron_lib/api/definitions/vlan_filter.py | 45 +++ neutron_lib/exceptions/taas.py | 46 +++ neutron_lib/plugins/ml2/api.py | 12 + .../api/definitions/test_qos_rule_type_filter.py | 25 ++ .../notes/bug-1957175-6b2705d4772df7de.yaml | 7 + ...hanismdriver-connectivity-00dc679a3f307345.yaml | 6 + .../qos-rule-type-filter-dbac0ec80ce342f3.yaml | 8 + .../notes/rehome_taas_apidef-5fb00d84da32b958.yaml | 6 + .../vnic-type-remote-managed-c0809926fcd30e93.yaml | 5 + 42 files changed, 1568 insertions(+), 3 deletions(-)