[release-announce] neutron 18.3.0 (wallaby)

no-reply at openstack.org no-reply at openstack.org
Thu Apr 21 13:55:31 UTC 2022


We are overjoyed to announce the release of:

neutron 18.3.0: OpenStack Networking

This release is part of the wallaby stable release series.

The source is available from:

    https://opendev.org/openstack/neutron

Download the package from:

    https://tarballs.openstack.org/neutron/

Please report issues through:

    https://bugs.launchpad.net/neutron/+bugs

For more details, please see below.

18.3.0
^^^^^^


Bug Fixes
*********

* Enforce policy for 'qos_policy_id' attribute of Floating IP so
  only authorized users can set/unset it. For more info see bug
  LP#1957175 (https://bugs.launchpad.net/bugs/1957175).

* For IPv4 subnets when dns_nameservers is not set in the subnet,
  servers defined in 'ovn/dns_servers' config option or system's
  resolv.conf are used, but for IPv6 subnets these are not used. The
  same will now be used for IPv6 subnets too. Additionally dns servers
  added in 'ovn/dns_servers' config option or system's resolv.conf
  will be filtered as per the subnet's IP version. For more info see
  the bug report 1951816
  (https://bugs.launchpad.net/neutron/+bug/1951816).


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

* OVN mechanism driver allows only to have one physical network per
  bridge.

Changes in neutron 18.2.0..18.3.0
---------------------------------

a357dfaf11 [OVN] Keep "connectivity" VIF details parameter in migration
a91d0e5e4a Retry port_update in the OVN if revision mismatch during live-migration
2311644827 Also add B324 to bandit skip list for python3.9+
1b82d4aa20 [API] Return 403 for POST requests when user is not authorized
79aaa3e79d When creating a VXLAN interface, a device is mandatory
9a94e2855a Change set_device_rate calls according to new signature
21c9d40af4 [L3][QoS] L3 agent QoS extension to handle duplicated FIPs
a159a0d9bc Check whether vxlan group and local addresses are IPv4 or IPv6
6af566a89a Fix ingress bandwidth limit in the openvswitch agent
df5af13477 Clean duplicated QoS bandwidth related methods in ovs_lib module
b889048202 Repeat few times put new interface in the namespace
2152d5af3d [OVN][migration] Clean sg- and fg- interfaces
fc5dbf4ae7 Use python3-devel in bindep for rpm distros
7815ac1299 ovn migration: Remove usage of tripleo-ansible-inventory
9622c45bd6 ovn: Retry port binding on deadlock when migrating to ovn
5598510c80 Force security_group_id uuid validation of sg rules
60e416f5c8 ovn migration: Don't use executables in /tmp/
8b71efd792 Add FIPS enabled scenario jobs
5aac511914 Log request IDs for matched Nova external events
6f01d45c4a Ensure gateway is set for prefix delegated subnets
8daf9b38d3 Ensure that re_added ports are DOWN before set back to UP
b053dfe384 Remove exception ``IpAddressAllocationNotFound``
e480704a8c Enable sctp module in the fullstack Centos node
10988f4f70 Run configure_for_func_testing script after enable fips
ca458d9eb9 Ensure no GARPs are sent for Load Balancer VIPs on tenant networks
691a7ceeec Allow ovn_db_sync to continue on duplicate normalised CIDR
6c27df2ca0 Fix a error when l3-agent gets filter id for ip
396a146236 Support SB OVSDB connections to non-leader servers
1cadfc84a5 [SR-IOV] Fix QoS extension to set min/max values
0b74cfb67c Add centos-9 jobs for wallaby zuul layout
13eb9d176f Switch to cirros uec image in ovn tempest jobs
81e738cc1b [ OVN ][Migration] Reload systemctl daemon after removal
e6b7689003 [OVN][Cosmetic] Improve gen_router_port_options
f9740fcbb5 Restructure layout for periodic, experimental and tox jobs
86c153d57f [OVN] Handle RouterNotFound exception in set_gateway_mtu
f301bb6b02 Add functional and fullstack jobs with FIPS enabled
72142f4df9 Remove tox_install_siblings=False from the functional job's definition
d96819cce4 [OVN] Migrate "reside-on-redirect-chassis" for distributed FIP
276f154158 segments: fix scheduling duplicate segments
ec4e453671 Use a thread local variable to store the Nova Notifier enable flag
4bbeacf871 Make configure_for_func_testing compatible with e.g. Centos
a4f4dbcf10 Remove run-devstack role from run_functional_job playbook
3ba0f8f3c6 Disable pep8 import check for pyroute2 library
b9240125e6 Wait longer before deleting DPDK vhu trunk bridges
f2ddb6741e Use Port_Binding up column to set Neutron port status
4b06bf4d9f [ovn] Prevent stale ports in the OVN database
9d5cea0e2b Make sure "dead vlan" ports cannot transmit packets
bd9d87019a [OVN] Check if exists trunk ports before cleanup
4b89ad6403 [OVN] Correctly set dns_server in dhcpv4/v6 options
859726bc38 Update irrelevant-files for non scenario jobs
67f36f0c5c Update irrelevant-files to skip run of untouched jobs
c5765cdd75 [Stable Only] Enforce policy for qos_policy_id attribute
0340d412be Ensure subports status is aligned with parent port
feacbf58dd [OVN] Fix overlapping security group objects not correctly applied
a30fd26b3f [OVN] Add the VIF details "connectivity" parameter
46e763b63b Properly clean up ovn-northd in functional tests
fb33a02cb2 [OVN][FT] Check UNIX socket file before using it
9f5b745a5e Make the dead vlan actually dead
0f025c728c [OVN] Prevent OVS to OVN migration if firewall "iptables_hybrid"
d53733c33a [OVN] Check new added segments in OVN mech driver
45e1b44cc4 Recheck irrelevant files
f039eebf3e Register cleanup hooks for the object change handlers only when needed
8fa04bec83 Fix OVS OVSNeutronAgent.reclaim_local_vlan()
224332dbb5 Exclude router gw subnet ports from port list while port delete.
eddb3a7902 [OVN] Allow only one physical network per bridge
301deb87e7 Add wait event for metadataagent sb_idl
591570c5f4 [OVN] Add reverse DNS records


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

bindep.txt                                         |   9 +-
neutron/agent/common/ovs_lib.py                    | 351 +++++++++++----------
neutron/agent/l2/extensions/fdb_population.py      |   3 +-
neutron/agent/l3/dvr_local_router.py               |   3 +-
neutron/agent/l3/extensions/qos/base.py            |  42 +--
neutron/agent/l3/extensions/qos/fip.py             | 195 +++++++-----
neutron/agent/l3/router_info.py                    |   3 +-
neutron/agent/linux/bridge_lib.py                  |   3 +-
neutron/agent/linux/dhcp.py                        |   3 +-
neutron/agent/linux/interface.py                   |  73 +++--
neutron/agent/linux/ip_lib.py                      |  37 ++-
neutron/agent/linux/l3_tc_lib.py                   |   3 +-
neutron/agent/linux/tc_lib.py                      |   8 +-
neutron/agent/ovn/metadata/agent.py                |  17 +
neutron/agent/ovn/metadata/ovsdb.py                |   9 +-
neutron/cmd/sanity/checks.py                       |   4 +-
neutron/common/ovn/constants.py                    |  15 +-
neutron/common/ovn/utils.py                        |  16 +-
neutron/db/agentschedulers_db.py                   |   7 +-
neutron/db/db_base_plugin_common.py                |   2 +-
neutron/db/db_base_plugin_v2.py                    |   7 -
neutron/db/ipam_backend_mixin.py                   |   3 -
neutron/db/l3_dvrscheduler_db.py                   |   3 +-
neutron/extensions/qos_fip.py                      |   1 +
neutron/extensions/securitygroup.py                |   4 +-
neutron/ipam/drivers/neutrondb_ipam/driver.py      |  10 +-
neutron/ipam/exceptions.py                         |   2 +
neutron/notifiers/nova.py                          |  29 +-
neutron/pecan_wsgi/hooks/policy_enforcement.py     |  10 +-
.../linuxbridge/agent/linuxbridge_neutron_agent.py |   5 +-
neutron/plugins/ml2/drivers/mech_agent.py          |   2 +
.../drivers/mech_sriov/agent/eswitch_manager.py    |  64 ++--
.../ml2/drivers/mech_sriov/agent/pci_lib.py        |  18 +-
.../drivers/mech_sriov/mech_driver/mech_driver.py  |   3 +
.../agent/extension_drivers/qos_driver.py          |   9 +-
.../openvswitch/agent/openflow/native/br_int.py    |   9 +-
.../drivers/openvswitch/agent/ovs_neutron_agent.py |  41 ++-
neutron/plugins/ml2/drivers/ovn/db_migration.py    |   8 +-
.../ml2/drivers/ovn/mech_driver/mech_driver.py     |  59 +++-
.../ml2/drivers/ovn/mech_driver/ovsdb/commands.py  |   1 +
.../drivers/ovn/mech_driver/ovsdb/impl_idl_ovn.py  |   6 +-
.../drivers/ovn/mech_driver/ovsdb/maintenance.py   |  42 ++-
.../drivers/ovn/mech_driver/ovsdb/ovn_client.py    |  68 ++--
.../drivers/ovn/mech_driver/ovsdb/ovn_db_sync.py   |   2 +-
.../drivers/ovn/mech_driver/ovsdb/ovsdb_monitor.py | 322 ++++++++++++-------
neutron/plugins/ml2/ovo_rpc.py                     |  12 +-
neutron/plugins/ml2/plugin.py                      |   5 +-
neutron/privileged/agent/linux/ip_lib.py           |  34 +-
neutron/privileged/agent/linux/tc_lib.py           |   3 +-
neutron/services/logapi/drivers/ovn/driver.py      |  22 +-
.../drivers/openvswitch/agent/ovsdb_handler.py     |   2 +-
neutron/services/trunk/drivers/ovn/trunk_driver.py |  12 +-
.../functional/agent/linux/test_bridge_lib.py      |   2 +-
.../drivers/ovn/mech_driver/ovsdb/test_impl_idl.py |  11 +-
.../ovn/mech_driver/ovsdb/test_ovn_db_resources.py |  14 +
.../ovn/mech_driver/ovsdb/test_ovn_db_sync.py      |   7 +
.../ovn/mech_driver/ovsdb/test_ovsdb_monitor.py    |  21 ++
.../drivers/ovn/mech_driver/test_mech_driver.py    |  28 +-
.../services/logapi/drivers/ovn/test_driver.py     |  63 +++-
.../openvswitch/agent/test_trunk_manager.py        |   2 +
.../unit/agent/l3/extensions/qos/test_base.py      |  12 +-
.../agent/l3/extensions/qos/test_gateway_ip.py     |   4 +-
.../ipam/drivers/neutrondb_ipam/test_driver.py     |   6 -
.../agent/test_linuxbridge_neutron_agent.py        |  14 +-
.../mech_driver/test_mech_linuxbridge.py           |  16 +-
.../macvtap/mech_driver/test_mech_macvtap.py       |  16 +-
.../mech_sriov/agent/test_eswitch_manager.py       | 126 ++++----
.../ml2/drivers/mech_sriov/agent/test_pci_lib.py   |  11 +-
.../mech_driver/test_mech_sriov_nic_switch.py      |  34 +-
.../agent/extension_drivers/test_qos_driver.py     |  11 +-
.../agent/openflow/native/test_br_int.py           |   2 +-
.../openvswitch/agent/test_ovs_neutron_agent.py    |  30 +-
.../mech_driver/test_mech_openvswitch.py           |  28 +-
.../drivers/ovn/mech_driver/ovsdb/test_commands.py |   4 +-
.../ovn/mech_driver/ovsdb/test_maintenance.py      |  46 +++
.../ovn/mech_driver/ovsdb/test_ovsdb_monitor.py    | 333 ++++++++++---------
.../drivers/ovn/mech_driver/test_mech_driver.py    | 233 +++++++++++++-
.../plugins/ml2/drivers/ovn/test_db_migration.py   |   4 +-
.../unit/privileged/agent/linux/test_ip_lib.py     |  15 +-
.../trunk/drivers/ovn/test_trunk_driver.py         |   6 +-
playbooks/configure_functional_job.yaml            |   6 +
playbooks/enable-fips.yaml                         |   5 +
playbooks/run_functional_job.yaml                  |   2 -
.../notes/bug-1957175-764bc9c73b8d46e9.yaml        |   6 +
...-dns-servers-ipv6-subnets-f2d525abc70b01b3.yaml |  11 +
...it-one-physnet-per-bridge-188285955a5ea124.yaml |   4 +
roles/disable_selinux/tasks/main.yaml              |   3 +
tools/configure_for_func_testing.sh                |  24 +-
.../tripleo_environment/ovn_migration.sh           |  11 +-
.../playbooks/ovn-migration.yml                    |   9 +
.../roles/migration/tasks/activate-ovn.yml         |   4 +-
.../roles/migration/tasks/cleanup-dataplane.yml    |  27 +-
.../roles/migration/tasks/clone-dataplane.yml      |   4 +-
.../roles/migration/templates/clone-br-int.sh.j2   |   2 +-
.../pre-checks/ovn-controllers/tasks/main.yml      |  10 +
.../playbooks/roles/stop-agents/tasks/main.yml     |   4 +
tox.ini                                            |   5 +-
zuul.d/base.yaml                                   |  42 ++-
zuul.d/grenade.yaml                                |  21 +-
zuul.d/job-templates.yaml                          |  77 +++++
zuul.d/project.yaml                                |  47 +--
zuul.d/rally.yaml                                  |  19 +-
zuul.d/tempest-multinode.yaml                      |  20 +-
zuul.d/tempest-singlenode.yaml                     |  84 ++++-
zuul.d/tripleo.yaml                                |  25 +-
135 files changed, 2834 insertions(+), 1138 deletions(-)







More information about the Release-announce mailing list