Current Series Release Notes¶
5.0.1-59¶
New Features¶
Added the
network-metadataAPI extension. It adds themetadata_enabledboolean attribute to thenetworkresource, allowing to enable or disable the metadata service per network. The default value isNone, meaning that the network inherits the global[ovn] ovn_metadata_enabledconfiguration value.
The new extension
router-availability-zone-hints-writable: Provides the ability to update the value of the router Availability Zone Hints (AZ Hints). Plugins supporting this API extension must also supportrouter_availability_zoneAPI Extension.
Security Issues¶
local_idandpeer_idvalues for the VPN API are now validated against a character set before being accepted, and any invalid values are rejected. This allows the IPsec site connection generated files to always have valid values. For more information, see bug 2143775.
Bug Fixes¶
Added
is_filterto the remaining scalar attributes in the agent API definition (created_at,started_at,heartbeat_timestamp, andconfigurations). Some attributes already hadis_filter, but these four did not, which caused list operations with query filters to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto theidandtenant_idattributes in the auto allocated topology API definition. Previously, these attributes were not declared as filterable, which caused list operations with query filters to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto all scalar attributes in the BGP dynamic routing API definition forbgp_speakers(id,name,local_as,ip_version,tenant_id,advertise_floating_ip_host_routes, andadvertise_tenant_networks) andbgp_peers(id,name,peer_ip,remote_as,auth_type, andtenant_id). Previously, no BGP attribute was declared as filterable, which caused list operations with query filters (e.g.?name=foo) to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto all scalar attributes in the BGPVPN API definition (id,tenant_id,name, andtype). Previously, no BGPVPN attribute was declared as filterable, which caused list operations with query filters (e.g.?name=foo) to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto themetainfoattribute in the service profiles API definition. Otherservice_profilesattributes already declaredis_filter, butmetainfodid not, which caused list operations with query filters to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto all scalar attributes in the floating IP pools API definition (subnet_id,subnet_name,network_id,cidr, andproject_id). Previously, no floating IP pool attribute was declared as filterable, which caused list operations with query filters (e.g.?subnet_name=foo) to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto the remaining scalar attributes in the L3 NDP proxy API definition (id,project_id,router_id,port_id,ip_address, anddescription). Thenameattribute already declaredis_filter, but the others did not, which caused list operations with query filters to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto thetypeattribute in the loggable resources API definition. Alllogsattributes already declaredis_filter, buttypeonloggable_resourcesdid not, which caused list operations with query filters to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto thetenant_idattribute in the metering label rules API definition. Themetering_labelsresource already declared all attributes as filterable, buttenant_idonmetering_label_rulesdid not, which caused list operations with query filters to return HTTP 400 when the filter-validation extension is enabled.
The
extension_aliasesproperty ofExtensionDriverinneutron_lib.plugins.ml2.apinow returns an empty list, rather than a list containingNone, when the driver does not define anextension_alias.
Added
is_filterto the remaining scalar attributes in the network IP availability API definition (total_ips,used_ips, andsubnet_ip_availability). Some attributes already hadis_filter, but these three did not, which caused list operations with query filters to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto the remaining scalar attributes in the network segment range API definition (default,shared,minimum,maximum,used, andavailable). Some attributes already hadis_filter, but these six did not, which caused list operations with query filters to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto therulesattribute in the QoS policies API definition and to thetypeattribute in the rule types API definition. Other QoS attributes already declaredis_filter, but these two did not, which caused list operations with query filters to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto thesegmentation_idattribute in the segment API definition. Othersegmentsattributes already declaredis_filter, butsegmentation_iddid not, which caused list operations with query filters to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto all scalar attributes in the service type API definition (service_type,name, anddefault). Previously, no service provider attribute was declared as filterable, which caused list operations with query filters (e.g.?name=foo) to return HTTP 400 when the filter-validation extension is enabled.
Added
is_filterto all scalar DB-backed attributes in the TaaS API definitions (tap_services,tap_flows,tap_mirrors, and thetaas-vlan-filterextension). Previously, no TaaS attribute was declared as filterable, which caused list operations with query filters (e.g.?name=foo) to return HTTP 400. This also brokeopenstack tap service show <name>,openstack tap flow show <name>, andopenstack tap mirror show <name>because the client falls back to filtering by name when the initial UUID-based lookup returns 404.