[release-announce] neutron 16.0.0 (ussuri)

no-reply at openstack.org no-reply at openstack.org
Wed May 13 11:01:02 UTC 2020


We are overjoyed to announce the release of:

neutron 16.0.0: OpenStack Networking

This release is part of the ussuri 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.

16.0.0
^^^^^^

Prelude

The 16.0.0 release includes many bug fixes and new features.

The most important improvements worth mentioning are:

* Python 2 is no longer supported by Neutron, Python 3.6 and 3.7
  are.

* Address scopes and subnetpools can now be shared with other
  tenants using the Role Based Access Control ("RBAC") mechanism.

* Security groups can now be set as "stateful". Conntrack will not
  be used for any rules from such a group. This is currently supported
  only by the "iptables" and "iptables_hybrid" drivers.

* Neutron API now allows tagging resources directly in the "POST"
  request.

* IGMP snooping (multicast) can now be enabled in the "OVS" and
  "OVN" drivers.

* A list of IPv6 addresses for a dhcp-host entry in the dnsmasq DHCP
  agent driver can be configured. This solves problems with failing
  boot process when only one IP address is available. See #1861032
  (https://bugs.launchpad.net/neutron/+bug/1861032)) for details about
  the issue.

* The networking-ovn mechanism driver has been merged into the
  neutron repository and is now an in-tree driver for ML2.

Changes in neutron 15.0.0.0rc1..16.0.0
--------------------------------------

1e81440b63 Monkey patch original current_thread _active
54ffa37538 Add Octavia file in devstack/lib
cca0aebb26 Add Prelude for Ussuri release notes.
e3e9a90f75 Imported Translations from Zanata
ed10d0ca60 Update TOX_CONSTRAINTS_FILE for stable/ussuri
bd997fd9f1 Update .gitreview for stable/ussuri
a8a2bd7e07 Lock subnets during port creation and subnet deletion
dc9084a8ec [L3 HA] Add "no_track" option to VIPs in keepalived config
2697341846 [OVN] External ports: Account for VNIC_DIRECT_PHYSICAL / VNIC_MACVTAP
3a6a8c334a Provide correct fip cidr when deleting port forwarding
ba35c0fc29 [OVN] Enable qos service plugin in tempest jobs
d840881359 Additions to ovn-db-local.conf.sample
2273499155 Add rootwrap filter rule for radvd-kill script
8d85b35629 Add "rbac-address-scope" to OVN supported extensions
aa9db869ee Fix "TestMonitorDaemon" keepalived-state-change input parameters
2ccddef913 Improve port retrieval when validating auto address
7e5a0e04b8 OVN: Add note re IGMP groups upon ovn-controller service restart
c92950b0ee [Fullstack] Handle properly BrokenPipeError exception
ac5094daa6 Wait until agent metadata is in SB chassis register
b098239d72 Refactor OVN client QoS extension
56b971bb42 Allow sharing of subnet pools via RBAC mechanism
784f8e6416 Update OVN local.conf sample file
05d87d6d90 Promote tempest and fullstack uwsgi jobs to be voting
f93aebe790 [OVN] Bump up transaction timeout for functional tests
2e6aa290a3 Default (shared) network segment range is not mandatory
25830e8ec5 [OVN] Add IGMP snooping configuration guide
2a36ea26cc Add fullstack tests for stateless security groups
02a74c3d2a Enable back mac spoofing and disabled port security tests
a1735c46d8 Don't reschedule hosts unless we need to
21935365f2 "keepalived_state_change" needs to use threading to send arping
306280813f Replace ctype.CDLL by ctypes.PyDLL in linux.ip_lib
3e2b15f0d6 Add tunnel_ip_version to tunnel_sync() error message
a90654ae5a Revert "Subcribe trunk & subport events to set subport id"
d0a1652227 Add trunk subports to be one of dvr serviced device owners
eb775458c6 [DVR] Don't populate unbound ports in router's ARP cache
b27940c205 Migrate the OVN migration scripts
27c8391458 Fix neutron debug probe to use integration_bridge
3d3b61f879 Revert "[OVN] Set 'unknown' address properly when port sec is disabled"
6d619ea7c1 Fix name of "subnet_dns_publish_fixed_ip" extension in docs
ea999564a5 [OVN] HA Chassis Group: Ignore UPDATES when external_ids hasn't changed
72a5b5b61f Fix return correct cache when reusing port
ba00b06ae4 mech_driver.OVNMechanismDriver "_ovn_client" is a read-only property
e37722c0f5 Wait before deleting trunk bridges for DPDK vhu
79e8230e39 Filter subnet by segment ID or None
113dfac608 Prioritize port create and update ready messages
d7f925249a Mark security group fullstack tests as stable
c52029c39a Do not link up HA router gateway in backup node
07b015d789 Use dict .get() to avoid a KeyError in the segment plugin
21ca0ab52c Enable neutron-ovn jobs in check queue
3281d15dd4 Switch tripleo based job to be run on Centos 8
00298fe6e8 [Security] fix allowed-address-pair 0.0.0.0/0 issue
f31ae53dd5 Revert "Switch to use cast method in dhcp_ready_on_ports method"
f156784b42 [OVN] Fix: DevStack guide
e92e311232 [ovn] Documentation: Fix broken links in the OVN Doc
79af9e786d Add usage note in utils.Timer class
f9d6076aec [OVN] Fix check_for_ha_chassis_group_address maintenance task
d982a68446 Finish migration to new engine facade in test_db_base_plugin_v2
4980995176 Revert "Remove native openflow driver 'deferred' code"
1e970f1aa0 Switch to new engine facade in extensions unit tests
4da355098e Switch to new engine facade in test_allowedaddresspairs_db module
c8f2a30983 Reno only - Make stateless allocation segment aware
42ad50db1e Add known gaps between ML2/OVS and OVN
4b10f6876f Fix fake_meta_dvr_port initialization
06fde66b0b [ovn] Stricter matching on metadata port binding event
eb6104c0ac Allow sharing of address scopes via RBAC mechanism
9bd97242b6 Clear lsp.addresses always if port is OVN LB VIP port.
ceb27f2c7d Mark TestVirtualPorts tests as unstable
e1804e6f5f Use "datetime.datetime.isoformat" instead of "timeutils.isotime"
512d8abb4b Neutron ovs agent: Removing SmartNIC OVS representor port on instance tear down and resync
ee73b50618 [OVN] Call OVNClient methods with context when possible
45643f2679 Change OVS tunnel tests to support unittest.mock
8c7aac4f3c Change TestOVNL3RouterPlugin to support unittest.mock
f987486feb Deny delete last slaac subnet with allocation on segment
3d3dc60408 subnet create - segment aware auto-addr allocation
8ebc635a18 Subcribe trunk & subport events to set subport id
807a99f3ab [fullstack] Add option for custom apipaste.ini
7e09e72661 Filter subnets on fixed_ips segment
e0cb072b84 [OVN] Switch release jobs to OVN 20.03 (v20.03.0 tag)
4912d11b34 Add fip_pf_description extension to be supported by service plugin
5a256dd937 Switch to new enginefacade in l3_hascheduler_db module
2b56e60140 Unblock security group update with same stateful data
d92e71c297 Use OVN mech driver OVSDB connections for l3 plugin
933049f529 [OVN] Updates to tools/migrate_names.txt
8108db2c6f Bump neutron-lib to 2.2.0
9e416224b0 [OVN] OVN DB schema update aware maintenance tasks
4824a714bf [OVN] Add support for external ports
03ef29b1f0 [OVN] Default to TLS for OVN-enabled tests
db26ded539 Fix bulk port tag test_type_args_passed_to_extension()
cc281afeec Register DNSMASQ_OPTS in functional sanity tests
295480c53c Provide meaningful defaults for OVN/OVS_REPO_NAME
1e69279817 Check tc_lib.add_tc_policy_class input parameters
d954cd4fea Remove native openflow driver 'deferred' code
cbc473e066 Support for stateless security groups
8456240e7d Run fullstack security group test always serially
6b01ecf9ea Limit ovn sanity checks to q-svc
02a7e96743 Rename devstack service neutron-ovn-metadata-agent
7fa6c1bf39 [OVN] Add IGMP snooping support
592c2f8d91 DHCPv6 - Use addr6_list in dnsmasq
07d5a20b3b [OVN] Add missing OVN functional tests
36656ca318 [Community goal] Add contributor and PTL guide
a27081636b Fix _notify_l3_agent_port_update when there is no binding host
2baeae7519 Clean dvr fip gateway entry when fip agent gw port is deleted
42fc820ded Increase log information in "TestMonitorDaemon"
ec539cb76f Fix assertEqual() calls in metadata agent unit tests
5af046fd4e Remove extra header fields in proxied metadata requests
18c63a7148 [OVN] DevStack: Split the OVN_BRANCH and OVS_BRANCH variables
248cdaa6f7 Allow usage of assert_called_once method in unit tests
5c99964ead [OVN] Enable live-migration tests for devstack multinode
ab1390163d Make neutron-ovn-tempest-slow job green
08132e213d Change way of retrieving LSP in virtual_port functional tests
8c103739f6 [OVN] Always update router static route
d6e1523f78 Add tag-ports-during-bulk-creation to devstack
4739a4febb Ensure that default SG exists during list of SG rules API call
2581778264 [OVN] Remove SG dependency on original port dict
8ae949d5cb Revert "Blacklist test_multiple_ports_portrange_remote for OVN"
b46dbce219 Fix logging call in the segment plugin
c3bbbf575f [OVN] Update zuul jobs to use local OVN driver
046672247d Fix queries to retrieve allocations with network_segment_range
43e150e690 Ensure netlink.nla_slot tuple key is a string
eae036a9d9 Catch PortBindingChassisEvent in test_agent_resync_on_non_existing_bridge
483cc047fa Remove leftovers of get_external_network_id for router
d340f6be57 Add functional test for metadata agent monitoring
03378182f4 Remove neutron-tempest-dvr job from CI
5600163e9b [OvS] Handle re_added multi ports
e4de8d0dd3 Improve log message on exception for invalid tunnel type
4d5817003c Blacklist test_multiple_ports_portrange_remote for OVN
321afc8f89 Move rejection of min-bw rule on non-physnet port to the ovs qos driver
caa34c2797 Drop invalid rootwrap filters
d874c46bff Filter by owner SGs when retrieving the SG rules
dfd394805d Remove method get_security_group_rules_count
88a6c92dc7 [OVN] Merge networking-ovn vagrant into neutron
03203cc4c8 [OVN] Add OVN functional tests - part 1
6dbba8d5ce Check SG members instead of ports to skip flow update
f5c5755100 [Fullstack] Wait until min QoS and Queue registers are set in DB
0d43372f14 Add "project_id" filter when changing the network segmentation ID
7593f95a74 Set a default IP route metric in ip_lib.list_ip_routes
3053caaa02 Workaround in NetworkSegmentRange OVO until "project_id" migration
33fb446add Deprecate config option "ovs_integration_bridge"
98266664c8 Mark NetcatTesterTestCase tests as unstable
e2ab1636b0 Centralize traffic when LB and member has FIP
22ce84ab4d Revert "Add "ncat" rootwrap filter for debug"
2dd6222198 Set an absolute path in rootwrap filters_path
ee01ea950d Bump neutron-lib to 2.1.0
cc3b9df426 "ping"/"ping6" command support in rootwrap filters
cd66232c2b Merge networking-ovn documentation into neutron
0ef4233d89 Add "ncat" rootwrap filter for debug
efec8fc153 Reduce the VLAN/tunneled ranges in fullstack tests
016e7826f1 Improve VLAN allocations synchronization
50025935fe Add 'fip-port-details' to OVN ML2 supported extensions
c9a3d49513 Enhance agent's resources_synced check
cc4c382fd5 Add NEUTRON_PATH to configure_for_func_testing.sh
d8349033e9 Enforce "qos_max_rate" and "qos_burst" in OVN QoS options
b85c273639 [OVN] Reduce the number of watched tables in MetadataProxyHandler
37fafeb678 Add SR-IOV agent resource provider information
a0bb5763b2 dhcp-agent: equalize port create_low/update/delete priority
f9b5a7b6d7 Add 'is_available' function
e64bf6be1b [OVN] Devstack: Fix adding another compute node
6971404bb9 Add ovn-octavia-provider tag as official tag
99105848e5 Revert "Disable neutron-ovn-tempest-ovs-release temporarily"
244e6eead8 Use sys.executable instead of 'python'
13aa00026f Re-use existing ProcessLauncher from wsgi in RPC workers
a05a3ba413 Remove plugins.ml2.db.get_binding_levels
93d9d6bbba Ensure there is always at most 1 dvr fip gw port per agent and network
18d8d3973a Revert "[DVR] Add lock during creation of FIP agent gateway port"
c37781342e Use Python 3 as interpreter in test
a1d65ba210 Remove duplicate QoS backend support table
dcec852b7f [OVN] Update QoS related code from networking-ovn
5b12d808aa Disable neutron-ovn-tempest-ovs-release temporarily
d027a9bc77 Fix duplicate ID warning during doc build
2cd75e073a OVN Metadata agent gets OVSDB updates for only its Chassis
4e60c047d2 Permit OVS build can be set
938581d9bd Increate tox-py38 timeout to 3600 seconds
97773eaea6 Increase log information when a RootHelperProcess fails
740741864a Remove sleep command when retrieving OVS dp
b7dc0ac63a Increase tox-cover timeout to 4800 seconds
cf36bd4ca5 Enable ovsdb debug messages in functional and fullstack
b3a42cddc5 DVR: Remove control plane arp updates for DVR
c471c7330c [OVN] Remove VLAN check when setting external_mac
e22a191f47 Implement tagging during bulk port creation
7fa564ba2c Fix OVN agent devstack script to support IPv6
6ff46fb44b Add "ovn" as official tag used on Neutron's Launchpad
647b7f63f9 [OVN] Add an interval between agents health checks
936bd67aa4 Check "security_group_rule" quota during security group creation
f8a3b2c589 Stop configuring install_command in tox.
3284b5f5ac [OVN] Provide local.conf sample file for DevStack
303937f3ae [OVN] scripts for networking-ovn code migration
2e316157ed Pass result dict to extensions by create port bulk
9283738843 [OVN] Bump ovsdbapp requirements to 1.0.0
710dad13a2 Collect exception information in ARPSpoofTestCase only if initialized
fc507c701c Define new ipv6-only job for OVN
bc0b38b282 Use distutils.version to check dnsmasq supported version
c6a5b284b5 Ensure we don't pass empty addresses to lsp_set_addresses
3b56299e1f Ensure driver error preventing trunk port deletion is logged
06e43dd95d Add description field to portforwarding NAT rules
349869096b [OVN] Migrate the OVN tools
f9e2514ddc [OVN] Double the tempest_concurrency
4f94c55ed3 Increase tox-py3{6,7} and lower-constraints timeout to 3600 seconds
28b1cb749d Remove networking-midonet job from Neutron's check queue
18410097f2 [ovn] Agent liveness - allow time to propagate checks
37521cee8d Assign local variable before being referred
2225457791 Update release-checklist doc page
c5b7817fd0 Follow up to change of exception raised
2f46aee345 Remove python 3.5 from L3 rootwrap filters
45ae9dfb7d [OVN] Delete NAT entry first on any FIP update
d6fccd247f Allow to kill keepalived state change monitor process
cc890bf88b [OVN] Pass context while removing objects in OVN client
426afcfe02 [OVN] Use STACK_USER's actual primary group in starting services
e395322fbf [OVN] Re-enable test_port_security_macspoofing_port
6d1d4cd6ba "_create_security_group_precommit" additional arguments are kwargs
89f138fa41 Remove "update_device_up" parameter from port notification
d1e6c8e556 Remove TripleO job from Neutron's check queue
f2b52b5e8f Add "qos_network_policy_id" to port definition
00a74d1137 Install OVN for functional tests
3ac866950f Replace support matrix ext with common library
13f1015809 Fix invalid assertFalse statements
1310c536e6 [OVN] Enable neutron-ovn-tempest-ovs-release job
0643ab44d8 Set OpenFlow 1.0, 1.3 and 1.4 by default on bridges
12089a526e Add support for direct ports with QoS in OVS
3acf0812a2 [OVN] Add missing pyOpenSSL requirement
1986865bd5 Add MariaDB 10.3 repository for Ubuntu Bionic
48ab58b46e [OVN] Change DevStack to use the local OVN driver
03b87ad963 [OVN] Set 'unknown' address properly when port sec is disabled
620adfe753 Complete dropping py27 support goal
0c8e520b37 [OVN] Add missing OvnSbIdl and OvnNbIdl unit tests
7d5cd3f47d [OVN] TrivialFix: use_new_ovn_repository must check major version
a0fbb3da9b Modify exception string to have more information
03ad5bf19c Fix bug number in release note
7e0c44e21f Remove references to unittest2 library
b20669fa6e IPv6 accepts first address only for routers
84658a96b3 Bump neutron-lib to 2.0.0
efa8dd0895 Add accepted egress direct flow
30a0333f64 Add Dongcan Ye as neutron-vpnaas lieutenant and bug contact person
a022301b50 Set binding profile directly from OVNTrunkDriver (redo cont.)
93e9dc5426 ovs agent: signal to plugin if tunnel refresh needed
193cc4b5ec [OVN] Add OVN metadata entry points
668f582f8d Remove neutron-rootwrap-xen-dom0 script
331a195972 [OVN] Migrate the OVN mech driver
f758bc9980 DhcpLocalProcess._enable should not call DhcpLocalProcess.restart
af274fa826 Switch to reader context
6f7b88d080 Use effective MAC address for macvtap assigned VFs
83d7eb961d Add OVS QoS driver cache for minimum bandwidth rules
08bfbed4c3 Remove the condition that the mtu is nullable
5f2758bb80 Move arp device check out of loop
b89616b1cf Add missing parameter option in log message
9c5156575d Pass correct port data to extension manager
0b3cff33c1 Subnet gateway should be a valid IP
0bf005b3c3 Disable not needed services in grenade jobs
2a8b5860a0 Imported Translations from Zanata
4075db5fd0 Improve ovs cleanup utility help
e54b64f725 OVSInterfaceDriver.plug_new should catch correct exceptions
474bff078c Work around potential double row.delete() call
3faba7cae0 [L3] Switch order of processing added and removed router ports
52787dd4a4 Move tripleo standalone job to ostempest
480b04ce04 Unnecessary routers should not be created
d484bbec2e Update TOX_ENV_SRC_MODULES example
3c156b6a4a Check "keepalived" is stopped in KeepalivedManagerTestCase
0166a1f286 Remove the neutron-grenade job definition
5663517613 Support L3 agent cleanup on shutdown
f711090ed3 Check mtu on network update
3dbe5c2057 Add Neutron Priorities to dashboards list
be1bdd4342 [OVN] Import OVN Client, L3 and QoS related code
b869f30e0b Fix TestHashRingManager test cases
57bc6d167b Allow to select subnets to publish DNS records
36727e3463 Fix pep8 errors found by hacking 2.0.0
a75ec08ddb don't clear skb mark when ovs is hw-offload enabled
df401ddca1 Remove unused arguments in test methods
364fc1413b Remove locks from privileged ip_lib module
04e391ba3e Bump neutron-lib to 1.30.0
fc4e3b95d8 Bump min pyroute2 version to 0.5.7
eabaf30fea Add etc/neutron/*.sample files to be ignored by git
ade35a233e Add retries to update trunk port
7a9fcd11a8 [OVN] Move trunk driver
b99765df8f Use "via" in gateway dictionary in Linux Bridge agent
07be793435 Use constraints for docs tox target
ed26c606c1 Add a tox requirements target
49c0d0548a Move zuul jobs definitions to zuul.d directory
258eebea71 Locate RP-tree parent by hypervisor name
af8a812240 Load the glibc library only once for Pyroute2
88153e7013 [OVN] Move OVN metadata agent
fdb3f05055 [OVN] Import ovsdb related code (part 2)
3437572906 Replace "ip monitor" command with Pyroute2 implementation
f77c1037e4 [OVN] Move OVN ACL commands to Neutron tree
ec171b06f0 doc: fixed word 'neutron-serer' spelling error
8cc2765b5f Avoid raising NetworkInterfaceNotFound exception in DHCP agent logs
50ffa5173d [OVS] Handle added/removed ports in the same polling iteration
b81155ee27 Migrate from ofctl to native QoS DSCP
96741866a7 Move DevStack OVN module to Neutron
c5c896683c [OVN] Move OVN common.acl to Neutron tree
4b5cf9e5fb [OVN] Import ovsdb related code
65692127f6 [OVN] Move OVN commons to neutron tree
f8cb7e849f [OVN] Add revision number maintenance methods
04f693bbbb [OVN] Add revision number methods
10bb7ecbb6 Update comments messages in abandon_old_reviews script
b59fdaa9aa Log exact error during getting value from file
d63da24a13 [OVN] Add hash ring methods
397eb2a2fe Serialize subnet creating depending on the network ID
b01e0c2aa9 [OVS FW] Clean port rules if port not found in ovsdb
a8b5afa41e Add upgrade check for NIC Switch agent
4b3baeb15a Do not inherit from built-in "dict"
151dab39dc Remove grenade-py3 job from Neutron CI
22d2bb94f7 Revert "Revise log when create port failed"
f26b3620db [OVN] Add DB tables for OVN backend
5cb0ff418a Add more condition to check sg member exist
1e5ce97bb9 [OVN] Disable ovn jobs temporary
d296188c2e Set ignore_basepython_conflict to true in tox.ini
9fa881f870 Add upgrade check for networking-ovn db version
b898d2e3c0 List SG rules which belongs to tenant's SG
9267966628 [OVN] Sync requirements with OVN
9c6d3e073e Rehome networking-ovn CI jobs to neutron repository
b4972e246d use objects common_types from neutron-lib
139b496ef9 Dont schedule Network, respecting network_auto_schedule config
ea85e39660 Force arp_responder to True when DVR and tunneling enabled
185efb38aa Update networking-bgpvpn and networking-bagpipe liuetenants
cdadaef53a OpenFlow monitor
728d8ee4b1 NetcatTester.stop_processes skip "No such process" exception
e1a79995b9 Explicit mention py2 for neutron-grenade job
78231fb425 Start README.rst with a better title
eba2e9ce19 Remove neutron-grenade job from Neutron CI queues
39255f3e7e Parameter 'fileds' value is not used in _get_subnets
3593b0dc69 Switch neutron-tempest-with-os-ken-master job to zuul v3
0041860e97 HA race condition test for DHCP scheduling
4afba466e0 Make network support read and write separation
458fd224db [Fullstack] Fix waiting for packet with DSCP mark in test
a2fdf8aa72 Remove one of iptables_hybrid jobs
1d6207187c Update liaison for networking-sfc project
eeefd54c53 doc: Adjust heading levels
3c9b0a5fac [fullstack] find ip based on allocation_pool
c03b263a67 Trivial: fix firewall_refresh_needed return value type
cae66a4d8d Revise log when create port failed
76de8a715d SR-IOV: macvtap assigned vf check using sysfs
c4fd5a030f Remove old, legacy experimental CI jobs
ab286bcdac Set DB retry for quota_enforcement pecan_wsgi hook
7a9d6d2641 Do not initialize snat-ns twice
a545da420c Enable bulk updates for the dnsmasq
d15ad2e481 Increase waiting time for network rescheduling
9ad03dcf96 Catch FileNotFoundError when listing namespace PIDs
0a3c53e411 Move migration to proper dir and fix objects tests
59b37701e9 TestMinBwQoSOvs must call the correct methods
5b341150e2 Add "igmp_snooping_enable" config option for OVS agent
02be7c13b3 Remove deprecated agent_type option
30d3e4c56c Fix Geneve max_header_size config option text
eb3302207f Add profiler decorator to Neutron
26b8026cee Update security group rule if port range is all ports
7218873050 Set rootwrap daemon timeout for fullstack and functional tests
cc3886fd78 PSExtDriverTestCase: initialize variable in case of exception
aedc099176 Increase timeout when waiting for dnsmasq enablement
5537a81fbb Remove info about "ovsdb_interface" from config description
4d52b903eb Adding check for IPv6 address in setup_controllers
cb2ebcc998 "round" with ndigits=None returns an integer
0a7f166861 Add neutron-tempest-mariadb-full periodic job
4379310846 Remove Floating IP DNS record upon associated port deletion
a260afcf18 Add Source links to readme and  update Documentation
68625686a4 Make the MTU attribute not nullable
48ea7da6c5 Router synch shouldn't return unrelated routers
1d55a4508f Clean-up ssl packages from bindep.txt
6842465260 Stop testing python 2
7c5ce50a0c Check dnsmasq process is active when spawned
ecef65b9b5 Do not use exceptions in get_link_id() to control the code flow
4f59db2fab Reset timeout exception in DietTestCase when retrying
1a686fb401 Switch to use cast method in dhcp_ready_on_ports method
51dd91a73d Update bug contacts
48730d9449 Use threads insted of greethreads in IP monitor
471dc98707 Temporary disable CI job neutron-functional-python27
bdc1bc73f3 Fix mismatch of tags in dnsmasq options
e801159003 Handle OVSFWPortNotFound and OVSFWTagNotFound in ovs firewall
60ac055ff6 Add more info when parsing config fails
4b67a06403 Log OVS firewall conjunction creation
a8fa085364 [nova][train] Docs: Remove deprecated RetryFilter
70763c0d1b Update list of Neutron lieuetenants
555238da69 Start using oslo_utils.netutils.is_ipv6_enabled()
3fe4df00e3 [doc][IPv6] make kernel config addr_gen_mode clear
e101652a63 Don't call super() in Timer class __init__ method
592b446299 Convert Pyroute2 byte results to strings
dce7af902c Mock openstacksdk raise_from_response in ironic unit test
6b52e361f0 Fix misspell word
6a5a75d5a6 Add radvd_user config option
ee3054b936 Switch to openstack-python3-ussuri-jobs
ac0a426017 Add policy config for get_flavor_service_profile operation
12760c94c8 Adding LOG statements to debug 1838449
451c21571f ovsdb monitor: handle modified ports
040b550a86 Use admin context when updating router gateway
02b6c9827d doc: Update QoS minimum bandwidth limitations for Train
17706412e2 Switch neutron-tempest-postgres-full job definition to Zuul v3
74550b7b15 Code review policy - add note about approving mechanical changes
0fdcbe4ee8 Imported Translations from Zanata
654c1f06d5 Fix designate driver not being fully region aware
a534f10e7b Add irrelevant files to neutron-centos-7-tripleo-standalone
db3001a7a2 Remove QoS related objects unneeded compatibility conversions
4762ee9d1a Update master for stable/train
761b91fd22 Randomize VNI in FdbInterfaceTestCase
6b241bb13c Always make sure openvswitch kernel module is loaded
94f69ab407 Randomize BaseFullStackTestCase._find_available_ips
ffe5943e65 Make port list by mac case insesitive
d8eb42f1ea Configure keepalived interfaces according to config file
f9a750fcaf Prevent providing privsep-helper paths outside /etc
2bb241b7a2 Log the IPTables rules if "debug_iptables_rules"
c952b59600 Handle ports assigned to routers without routerports
0528068a35 switch to the newly created opensuse-15 nodeset
def8e95aad fixed_configured=True when Add/Remove port IPs
ab75405708 Initialize nova_notifier for only port data changes
69b3762dda Add binding_index to NetworkDhcpAgentBinding
da93f09676 Open Ussuri DB branch


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

.gitignore                                         |    1 +
.gitreview                                         |    1 +
.zuul.yaml                                         |  456 ---
CONTRIBUTING.rst                                   |   19 +-
HACKING.rst                                        |    5 +-
README.rst                                         |   18 +-
TESTING.rst                                        |   18 +-
bin/neutron-rootwrap-xen-dom0                      |  154 -
bindep.txt                                         |    7 -
devstack/lib/dns                                   |   11 +-
devstack/lib/octavia                               |   45 +
devstack/lib/ovn_agent                             |  829 +++++
devstack/lib/ovs                                   |   14 +-
devstack/lib/tag_ports_during_bulk_creation        |    3 +
devstack/ovn-compute-local.conf.sample             |   89 +
devstack/ovn-db-local.conf.sample                  |   47 +
devstack/ovn-local.conf.sample                     |  172 +
devstack/ovn-vtep-local.conf.sample                |   39 +
devstack/plugin.sh                                 |   35 +
.../admin/ovn/figures/ovn-l3ha-bfd-failover.png    |  Bin 0 -> 122142 bytes
.../admin/ovn/figures/ovn-l3ha-bfd-failover.svg    | 2599 +++++++++++++
.../figures/ovn-north-south-distributed-fip.png    |  Bin 0 -> 125745 bytes
.../figures/ovn-north-south-distributed-fip.svg    | 3090 ++++++++++++++++
.../ovn/refarch/figures/ovn-architecture1.png      |  Bin 0 -> 205984 bytes
.../ovn/refarch/figures/ovn-architecture1.svg      | 1568 ++++++++
.../admin/ovn/refarch/figures/ovn-compute1.png     |  Bin 0 -> 139894 bytes
.../admin/ovn/refarch/figures/ovn-compute1.svg     |  982 +++++
.../admin/ovn/refarch/figures/ovn-services.png     |  Bin 0 -> 97775 bytes
.../admin/ovn/refarch/figures/ovn-services.svg     |  860 +++++
.../refarch/launch-instance-provider-network.rst   |  774 ++++
.../launch-instance-selfservice-network.rst        |  757 ++++
.../admin/ovn/refarch/selfservice-networks.rst     |  517 +++
.../contributor/internals/code_profiling.rst       |  197 +
.../internals/ovn/acl_optimizations.rst            |  186 +
.../contributor/internals/ovn/data_model.rst       |  263 ++
.../internals/ovn/database_consistency.rst         |  442 +++
.../internals/ovn/distributed_ovsdb_events.rst     |  142 +
.../internals/ovn/l3_ha_rescheduling.rst           |  166 +
.../contributor/internals/ovn/loadbalancer.rst     |  316 ++
.../contributor/internals/ovn/metadata_api.rst     |  363 ++
.../contributor/internals/ovn/native_dhcp.rst      |   53 +
.../contributor/internals/ovn/ovn_worker.rst       |   84 +
.../contributor/internals/quality_of_service.rst   |   40 +-
.../contributor/ovn_vagrant/prerequisites.rst      |   29 +
.../ovn_vagrant/sparse-architecture.rst            |  106 +
.../contributor/policies/release-checklist.rst     |   20 +-
.../contributor/testing/ci_scenario_jobs.rst       |   22 +-
.../general_feature_support_matrix.ini             |  167 +-
.../provider_network_support_matrix.ini            |   57 +-
.../install/ovn/figures/ovn-initial-resources.png  |  Bin 0 -> 87952 bytes
.../install/ovn/figures/ovn-initial-resources.svg  | 1596 ++++++++
.../install/ovn/figures/tripleo-ovn-arch.png       |  Bin 0 -> 115804 bytes
.../install/ovn/figures/tripleo-ovn-arch.svg       | 3175 ++++++++++++++++
etc/neutron/rootwrap.d/debug.filters               |    6 +-
etc/neutron/rootwrap.d/iptables-firewall.filters   |    3 +
etc/neutron/rootwrap.d/l3.filters                  |   15 +-
etc/neutron/rootwrap.d/privsep.filters             |    2 +-
.../neutron_ovn_metadata_agent.ini                 |    6 +
etc/oslo-config-generator/ovn.ini                  |    6 +
etc/rootwrap.conf                                  |    3 +
lower-constraints.txt                              |   21 +-
neutron/agent/common/ovs_lib.py                    |   58 +-
neutron/agent/common/ovsdb_monitor.py              |   16 +-
neutron/agent/common/placement_report.py           |   61 +-
neutron/agent/common/utils.py                      |   25 +
neutron/agent/dhcp/agent.py                        |   54 +-
neutron/agent/dhcp_agent.py                        |    2 +
neutron/agent/l3/agent.py                          |   24 +-
neutron/agent/l3/dvr.py                            |    6 +-
neutron/agent/l3/dvr_edge_ha_router.py             |    8 +-
neutron/agent/l3/dvr_edge_router.py                |   10 +-
neutron/agent/l3/dvr_local_router.py               |   41 +-
neutron/agent/l3/extensions/port_forwarding.py     |    4 +-
neutron/agent/l3/ha.py                             |    9 +
neutron/agent/l3/ha_router.py                      |   43 +-
neutron/agent/l3/keepalived_state_change.py        |   91 +-
neutron/agent/l3/router_info.py                    |   40 +-
neutron/agent/l3_agent.py                          |    2 +
neutron/agent/linux/daemon.py                      |    2 +-
neutron/agent/linux/dhcp.py                        |  275 +-
neutron/agent/linux/external_process.py            |    5 +-
neutron/agent/linux/interface.py                   |   49 +-
neutron/agent/linux/ip_lib.py                      |   62 +-
neutron/agent/linux/ip_monitor.py                  |   86 -
neutron/agent/linux/ipset_manager.py               |    2 +-
neutron/agent/linux/iptables_firewall.py           |   81 +-
neutron/agent/linux/iptables_manager.py            |    1 +
neutron/agent/linux/keepalived.py                  |   22 +-
neutron/agent/linux/of_monitor.py                  |   84 +
.../agent/linux/openvswitch_firewall/firewall.py   |  173 +-
neutron/agent/linux/openvswitch_firewall/rules.py  |    6 +
neutron/agent/linux/ra.py                          |   11 +-
neutron/agent/linux/tc_lib.py                      |   50 +-
neutron/agent/linux/utils.py                       |    5 +-
neutron/agent/metadata/agent.py                    |   39 +-
neutron/agent/metadata/driver.py                   |    7 +-
neutron/agent/ovn/__init__.py                      |    0
neutron/agent/ovn/metadata/__init__.py             |    0
neutron/agent/ovn/metadata/agent.py                |  483 +++
neutron/agent/ovn/metadata/driver.py               |  224 ++
neutron/agent/ovn/metadata/ovsdb.py                |   72 +
neutron/agent/ovn/metadata/server.py               |  198 +
neutron/agent/ovn/metadata_agent.py                |   39 +
neutron/agent/rpc.py                               |    8 +-
neutron/agent/securitygroups_rpc.py                |    8 +-
.../api/rpc/agentnotifiers/dhcp_rpc_agent_api.py   |    4 +-
neutron/api/rpc/handlers/l3_rpc.py                 |   19 +-
neutron/api/rpc/handlers/securitygroups_rpc.py     |   11 +-
neutron/cmd/eventlet/agents/ovn_metadata.py        |   17 +
neutron/cmd/ovn/__init__.py                        |    0
neutron/cmd/ovn/migration_mtu.py                   |  119 +
neutron/cmd/ovn/neutron_ovn_db_sync_util.py        |  218 ++
neutron/cmd/ovs_cleanup.py                         |    4 +-
neutron/cmd/sanity/checks.py                       |   52 +-
neutron/cmd/sanity_check.py                        |   13 +
neutron/cmd/upgrade_checks/checks.py               |  123 +-
neutron/common/_constants.py                       |    3 +
neutron/common/cache_utils.py                      |   27 +-
neutron/common/config.py                           |    1 -
neutron/common/eventlet_utils.py                   |    9 +-
neutron/common/ipv6_utils.py                       |   29 +-
neutron/common/ovn/__init__.py                     |    0
neutron/common/ovn/acl.py                          |  499 +++
neutron/common/ovn/constants.py                    |  216 ++
neutron/common/ovn/exceptions.py                   |   38 +
neutron/common/ovn/extensions.py                   |   57 +
neutron/common/ovn/hash_ring_manager.py            |  100 +
neutron/common/ovn/utils.py                        |  474 +++
neutron/common/utils.py                            |   17 +-
neutron/conf/agent/cmd.py                          |    3 +-
neutron/conf/agent/common.py                       |    3 +
neutron/conf/agent/dhcp.py                         |   11 +-
neutron/conf/agent/l3/config.py                    |   14 +
neutron/conf/agent/ovn/__init__.py                 |    0
neutron/conf/agent/ovn/metadata/__init__.py        |    0
neutron/conf/agent/ovn/metadata/config.py          |   58 +
neutron/conf/agent/ovs_conf.py                     |   11 +
neutron/conf/agent/ovsdb_api.py                    |    5 +-
neutron/conf/plugins/ml2/drivers/driver_type.py    |    4 +-
.../plugins/ml2/drivers/mech_sriov/agent_common.py |    9 +
neutron/conf/plugins/ml2/drivers/ovn/__init__.py   |    0
neutron/conf/plugins/ml2/drivers/ovn/ovn_conf.py   |  300 ++
neutron/conf/plugins/ml2/drivers/ovs_conf.py       |   29 +-
neutron/conf/policies/flavor.py                    |   17 +-
neutron/conf/policies/security_group.py            |   16 +-
neutron/conf/profiling.py                          |   31 +
neutron/core_extensions/qos.py                     |    8 +-
neutron/db/address_scope_db.py                     |    6 +-
neutron/db/agentschedulers_db.py                   |    6 +-
neutron/db/db_base_plugin_common.py                |   19 +-
neutron/db/db_base_plugin_v2.py                    |  113 +-
neutron/db/external_net_db.py                      |    7 -
neutron/db/ipam_backend_mixin.py                   |   21 +-
neutron/db/ipam_pluggable_backend.py               |   25 +-
neutron/db/l3_db.py                                |   79 +-
neutron/db/l3_dvr_db.py                            |  224 +-
neutron/db/l3_dvrscheduler_db.py                   |   85 +-
neutron/db/l3_hascheduler_db.py                    |    5 +-
neutron/db/migration/__init__.py                   |    2 +
.../alembic_migrations/versions/EXPAND_HEAD        |    2 +-
.../expand/c613d0b82681_subnet_force_network_id.py |    5 +
.../18a7e90ae768_add_security_group_stateful.py    |   37 +
...22de6_add_dvr_fip_gateway_port_network_table.py |   42 +
...454a9655_add_dns_publish_fixed_ip_to_subnets.py |   46 +
.../expand/86274d77933e_change_mtu_to_not_null.py  |   55 +
.../Ibac91d24da2_port_forwarding_description.py    |   77 +
.../a010322604bc_network_subnet_update_lock.py     |   40 +
.../expand/c3e9d13c4367_add_binding_index_to_.py   |   68 +
.../expand/d8bdf05313f4_add_in_use_to_subnet.py    |   53 +
...236b0e1ff_add_rbac_support_for_address_scope.py |   82 +
...e88badaa9591_add_rbac_support_for_subnetpool.py |   81 +
.../ussuri/expand/f4b9654dd40c_ovn_backend.py      |   74 +
neutron/db/migration/cli.py                        |    3 +-
neutron/db/models/address_scope.py                 |   18 +-
neutron/db/models/dns.py                           |   23 +
neutron/db/models/dvr.py                           |   17 +
neutron/db/models/ovn.py                           |   63 +
neutron/db/models/plugins/ml2/geneveallocation.py  |    8 +
.../models/plugins/ml2/gre_allocation_endpoints.py |    8 +
neutron/db/models/plugins/ml2/vlanallocation.py    |    8 +
neutron/db/models/plugins/ml2/vxlanallocation.py   |    8 +
neutron/db/models/port_forwarding.py               |    6 +-
neutron/db/models/securitygroup.py                 |    4 +
neutron/db/models_v2.py                            |   65 +-
neutron/db/network_dhcp_agent_binding/models.py    |   12 +
neutron/db/ovn_hash_ring_db.py                     |   69 +
neutron/db/ovn_revision_numbers_db.py              |  229 ++
neutron/db/rbac_db_models.py                       |   22 +
neutron/db/securitygroups_db.py                    |  104 +-
neutron/db/securitygroups_rpc_base.py              |   41 +-
neutron/debug/debug_agent.py                       |    2 +
neutron/debug/shell.py                             |    2 +
neutron/extensions/fip_pf_description.py           |   20 +
neutron/extensions/qos_port_network_policy.py      |   20 +
neutron/extensions/rbac.py                         |    5 +
neutron/extensions/rbac_address_scope.py           |   22 +
neutron/extensions/rbac_subnetpool.py              |   22 +
neutron/extensions/stateful_security_group.py      |   22 +
neutron/extensions/subnet_dns_publish_fixed_ip.py  |   20 +
.../extensions/tag_ports_during_bulk_creation.py   |   24 +
neutron/extensions/tagging.py                      |   14 +-
neutron/hacking/checks.py                          |   18 +-
neutron/ipam/subnet_alloc.py                       |    2 +-
neutron/ipam/utils.py                              |   15 +-
neutron/locale/de/LC_MESSAGES/neutron.po           |  587 +--
neutron/locale/es/LC_MESSAGES/neutron.po           |  529 +--
neutron/locale/fr/LC_MESSAGES/neutron.po           |  533 +--
neutron/locale/it/LC_MESSAGES/neutron.po           |  522 +--
neutron/locale/ja/LC_MESSAGES/neutron.po           |  526 +--
neutron/locale/ko_KR/LC_MESSAGES/neutron.po        |  514 +--
neutron/locale/pt_BR/LC_MESSAGES/neutron.po        |  517 +--
neutron/locale/ru/LC_MESSAGES/neutron.po           |  507 +--
neutron/locale/tr_TR/LC_MESSAGES/neutron.po        | 1648 ---------
neutron/locale/zh_CN/LC_MESSAGES/neutron.po        |  452 +--
neutron/locale/zh_TW/LC_MESSAGES/neutron.po        |  462 +--
neutron/manager.py                                 |    7 +
neutron/objects/address_scope.py                   |   27 +-
neutron/objects/agent.py                           |    2 +-
neutron/objects/auto_allocate.py                   |    2 +-
neutron/objects/common_types.py                    |  319 --
neutron/objects/conntrack_helper.py                |    2 +-
neutron/objects/extensions/port_security.py        |    2 +-
neutron/objects/flavor.py                          |    2 +-
neutron/objects/floatingip.py                      |    2 +-
neutron/objects/ipam.py                            |    2 +-
neutron/objects/l3_hamode.py                       |    2 +-
neutron/objects/l3agent.py                         |    2 +-
neutron/objects/logapi/logging_resource.py         |    2 +-
neutron/objects/metering.py                        |    2 +-
neutron/objects/network.py                         |   22 +-
neutron/objects/network_segment_range.py           |   98 +-
neutron/objects/plugins/ml2/base.py                |   40 +
neutron/objects/plugins/ml2/flatallocation.py      |    4 +-
neutron/objects/plugins/ml2/geneveallocation.py    |    9 +-
neutron/objects/plugins/ml2/greallocation.py       |    9 +-
neutron/objects/plugins/ml2/vlanallocation.py      |   39 +-
neutron/objects/plugins/ml2/vxlanallocation.py     |   11 +-
.../objects/port/extensions/allowedaddresspairs.py |    2 +-
.../objects/port/extensions/data_plane_status.py   |    2 +-
neutron/objects/port/extensions/extra_dhcp_opt.py  |    2 +-
.../port/extensions/uplink_status_propagation.py   |    2 +-
neutron/objects/port_forwarding.py                 |   22 +-
neutron/objects/ports.py                           |   88 +-
neutron/objects/qos/binding.py                     |   19 +-
neutron/objects/qos/policy.py                      |   52 +-
neutron/objects/qos/rule.py                        |   31 +-
neutron/objects/qos/rule_type.py                   |    7 +-
neutron/objects/quota.py                           |    2 +-
neutron/objects/rbac.py                            |   12 +-
neutron/objects/rbac_db.py                         |   43 +-
neutron/objects/router.py                          |   18 +-
neutron/objects/securitygroup.py                   |   32 +-
neutron/objects/servicetype.py                     |    2 +-
neutron/objects/subnet.py                          |  121 +-
neutron/objects/subnetpool.py                      |   65 +-
neutron/objects/trunk.py                           |    2 +-
neutron/opts.py                                    |    1 -
neutron/pecan_wsgi/hooks/quota_enforcement.py      |    1 +
neutron/plugins/ml2/db.py                          |   20 -
neutron/plugins/ml2/drivers/helpers.py             |  142 +-
neutron/plugins/ml2/drivers/l2pop/mech_driver.py   |    7 +-
.../agent/extension_drivers/qos_driver.py          |    4 +-
.../linuxbridge/agent/linuxbridge_neutron_agent.py |    7 +-
.../drivers/mech_sriov/agent/common/exceptions.py  |    6 +-
.../drivers/mech_sriov/agent/eswitch_manager.py    |   93 +-
.../ml2/drivers/mech_sriov/agent/pci_lib.py        |   40 +-
.../drivers/mech_sriov/agent/sriov_nic_agent.py    |   16 +-
.../drivers/openvswitch/agent/common/constants.py  |    2 +
.../agent/extension_drivers/qos_driver.py          |   54 +-
.../openvswitch/agent/openflow/native/br_int.py    |   29 +-
.../openvswitch/agent/openflow/native/ofswitch.py  |    5 +-
.../agent/openflow/native/ovs_bridge.py            |   10 +-
.../openvswitch/agent/ovs_dvr_neutron_agent.py     |   56 +-
.../drivers/openvswitch/agent/ovs_neutron_agent.py |  327 +-
neutron/plugins/ml2/drivers/ovn/__init__.py        |    0
.../ml2/drivers/ovn/mech_driver/__init__.py        |    0
.../ml2/drivers/ovn/mech_driver/mech_driver.py     | 1157 ++++++
.../ml2/drivers/ovn/mech_driver/ovsdb/__init__.py  |    0
.../ml2/drivers/ovn/mech_driver/ovsdb/api.py       |  689 ++++
.../ml2/drivers/ovn/mech_driver/ovsdb/commands.py  | 1159 ++++++
.../ovn/mech_driver/ovsdb/extensions/__init__.py   |    0
.../ovn/mech_driver/ovsdb/extensions/qos.py        |  251 ++
.../drivers/ovn/mech_driver/ovsdb/impl_idl_ovn.py  |  860 +++++
.../drivers/ovn/mech_driver/ovsdb/maintenance.py   |  622 ++++
.../drivers/ovn/mech_driver/ovsdb/ovn_client.py    | 2313 ++++++++++++
.../drivers/ovn/mech_driver/ovsdb/ovn_db_sync.py   | 1244 +++++++
.../drivers/ovn/mech_driver/ovsdb/ovsdb_monitor.py |  558 +++
.../ml2/drivers/ovn/mech_driver/ovsdb/worker.py    |   38 +
neutron/plugins/ml2/drivers/type_tunnel.py         |   12 +-
neutron/plugins/ml2/drivers/type_vlan.py           |   53 +-
neutron/plugins/ml2/extensions/dns_integration.py  |   67 +-
.../ml2/extensions/subnet_dns_publish_fixed_ip.py  |   83 +
.../extensions/tag_ports_during_bulk_creation.py   |   58 +
neutron/plugins/ml2/managers.py                    |    4 +-
neutron/plugins/ml2/plugin.py                      |   92 +-
neutron/plugins/ml2/rpc.py                         |   18 +-
neutron/policy.py                                  |    5 +-
neutron/privileged/agent/linux/ip_lib.py           |  106 +-
neutron/profiling/__init__.py                      |    0
neutron/profiling/profiled_decorator.py            |   82 +
neutron/quota/resource_registry.py                 |    5 -
neutron/scheduler/base_resource_filter.py          |    2 +-
neutron/scheduler/base_scheduler.py                |    4 +-
neutron/scheduler/dhcp_agent_scheduler.py          |   64 +-
neutron/scheduler/l3_ovn_scheduler.py              |  154 +
neutron/server/wsgi_eventlet.py                    |    2 +-
neutron/service.py                                 |   18 +-
.../externaldns/drivers/designate/driver.py        |    3 +-
.../metering/drivers/iptables/iptables_driver.py   |    6 +-
neutron/services/ovn_l3/__init__.py                |    0
neutron/services/ovn_l3/plugin.py                  |  427 +++
neutron/services/placement_report/plugin.py        |   34 +-
neutron/services/portforwarding/pf_plugin.py       |    4 +-
neutron/services/qos/drivers/manager.py            |    5 +-
neutron/services/qos/drivers/openvswitch/driver.py |   15 +-
neutron/services/qos/drivers/ovn/__init__.py       |    0
neutron/services/qos/drivers/ovn/driver.py         |   63 +
neutron/services/qos/qos_plugin.py                 |   16 +-
neutron/services/segments/exceptions.py            |    4 +
neutron/services/segments/plugin.py                |   55 +-
neutron/services/tag/tag_plugin.py                 |    9 +-
.../drivers/openvswitch/agent/ovsdb_handler.py     |    5 +-
neutron/services/trunk/drivers/ovn/__init__.py     |    0
neutron/services/trunk/drivers/ovn/trunk_driver.py |  191 +
neutron/services/trunk/plugin.py                   |   16 +-
neutron/services/trunk/rpc/server.py               |   44 +-
.../agent/l3/bin/cmd_keepalived_state_change.py    |   22 +
.../agent/l3/test_keepalived_state_change.py       |  219 +-
.../functional/agent/l3/test_legacy_router.py      |   10 +-
.../functional/agent/l3/test_metadata_proxy.py     |    2 +-
.../functional/agent/linux/test_bridge_lib.py      |    4 +-
.../functional/agent/linux/test_ip_monitor.py      |   67 -
.../functional/agent/linux/test_keepalived.py      |   17 +-
.../functional/agent/linux/test_of_monitor.py      |   98 +
.../functional/agent/linux/test_process_monitor.py |    3 +-
.../functional/agent/ovn/metadata/__init__.py      |    0
.../agent/ovn/metadata/test_metadata_agent.py      |  273 ++
.../test_c3e9d13c4367_add_binding_index_to_.py     |   90 +
.../functional/db/test_ovn_revision_numbers_db.py  |  186 +
.../functional/plugins/ml2/drivers/ovn/__init__.py |    0
.../ml2/drivers/ovn/mech_driver/__init__.py        |    0
.../ml2/drivers/ovn/mech_driver/ovsdb/__init__.py  |    0
.../ovn/mech_driver/ovsdb/extensions/__init__.py   |    0
.../ovn/mech_driver/ovsdb/extensions/test_qos.py   |  113 +
.../drivers/ovn/mech_driver/ovsdb/test_impl_idl.py |  149 +
.../ovn/mech_driver/ovsdb/test_maintenance.py      |  828 +++++
.../ovn/mech_driver/ovsdb/test_ovn_db_resources.py | 1153 ++++++
.../ovn/mech_driver/ovsdb/test_ovn_db_sync.py      | 1634 +++++++++
.../ovn/mech_driver/ovsdb/test_ovsdb_monitor.py    |  233 ++
.../drivers/ovn/mech_driver/test_mech_driver.py    |  596 +++
.../scheduler/test_dhcp_agent_scheduler.py         |   62 +-
.../l3_router/test_l3_dvr_router_plugin.py         |  243 --
.../functional/services/ovn_l3/test_plugin.py      |  552 +++
.../portforwarding/test_port_forwarding.py         |   63 +-
.../openvswitch/agent/test_ovsdb_handler.py        |    3 +-
.../services/trunk/drivers/ovn/__init__.py         |    0
.../trunk/drivers/ovn/test_trunk_driver.py         |  116 +
.../unit/agent/common/test_placement_report.py     |   54 +-
.../agent/l3/extensions/test_port_forwarding.py    |   19 +-
.../linux/openvswitch_firewall/test_firewall.py    |  100 +-
.../agent/linux/openvswitch_firewall/test_rules.py |    3 +-
.../unit/agent/linux/test_external_process.py      |   19 +
.../unit/agent/linux/test_iptables_firewall.py     |   23 +-
.../unit/api/rpc/handlers/test_resources_rpc.py    |    2 +-
.../api/rpc/handlers/test_securitygroups_rpc.py    |   22 +-
.../unit/common/ovn/test_hash_ring_manager.py      |  134 +
.../unit/extensions/test_data_plane_status.py      |    3 +-
.../extensions/test_floating_ip_port_forwarding.py |   37 +-
.../extensions/test_network_ip_availability.py     |   25 +-
.../extensions/test_subnet_dns_publish_fixed_ip.py |  105 +
.../objects/plugins/ml2/test_geneveallocation.py   |    6 +-
.../unit/objects/plugins/ml2/test_greallocation.py |    6 +-
.../objects/plugins/ml2/test_vlanallocation.py     |    6 +-
.../objects/plugins/ml2/test_vxlanallocation.py    |    6 +-
.../unit/objects/test_network_segment_range.py     |  206 +-
.../plugins/ml2/drivers/l2pop/test_mech_driver.py  |    2 +-
.../agent/test_linuxbridge_neutron_agent.py        |    3 +-
.../mech_sriov/agent/test_eswitch_manager.py       |  159 +-
.../ml2/drivers/mech_sriov/agent/test_pci_lib.py   |   40 +-
.../mech_sriov/agent/test_sriov_nic_agent.py       |   32 +-
.../agent/extension_drivers/test_qos_driver.py     |   27 +-
.../agent/openflow/native/test_br_int.py           |   58 +-
.../openvswitch/agent/test_ovs_neutron_agent.py    |  699 ++--
.../drivers/openvswitch/agent/test_ovs_tunnel.py   |   42 +-
.../ml2/drivers/ovn/mech_driver/__init__.py        |    0
.../ml2/drivers/ovn/mech_driver/ovsdb/__init__.py  |    0
.../ovn/mech_driver/ovsdb/extensions/__init__.py   |    0
.../ovn/mech_driver/ovsdb/extensions/test_qos.py   |  365 ++
.../ovn/mech_driver/ovsdb/schemas/ovn-nb.ovsschema |  449 +++
.../ovn/mech_driver/ovsdb/schemas/ovn-sb.ovsschema |  404 +++
.../drivers/ovn/mech_driver/ovsdb/test_commands.py | 1564 ++++++++
.../ovn/mech_driver/ovsdb/test_impl_idl_ovn.py     |  826 +++++
.../ovn/mech_driver/ovsdb/test_maintenance.py      |  410 +++
.../ovn/mech_driver/ovsdb/test_ovn_db_sync.py      |  986 +++++
.../ovn/mech_driver/ovsdb/test_ovsdb_monitor.py    |  603 +++
.../drivers/ovn/mech_driver/test_mech_driver.py    | 3050 ++++++++++++++++
.../unit/plugins/ml2/drivers/test_type_vlan.py     |   18 +
.../test_tag_ports_during_bulk_creation.py         |  129 +
.../unit/plugins/ml2/test_ext_portsecurity.py      |    1 +
.../unit/plugins/ml2/test_tracked_resources.py     |    5 +
.../unit/privileged/agent/linux/test_ip_lib.py     |   43 +-
.../unit/scheduler/test_dhcp_agent_scheduler.py    |   46 +-
.../unit/scheduler/test_l3_agent_scheduler.py      |   49 +-
.../unit/services/placement_report/test_plugin.py  |   33 +-
.../services/qos/drivers/openvswitch/__init__.py   |    0
.../qos/drivers/openvswitch/test_driver.py         |   45 +
.../unit/services/qos/drivers/ovn/__init__.py      |    0
.../unit/services/qos/drivers/ovn/test_driver.py   |   46 +
.../unit/services/qos/drivers/test_manager.py      |    3 +-
.../unit/services/trunk/drivers/ovn/__init__.py    |    0
.../trunk/drivers/ovn/test_trunk_driver.py         |  382 ++
neutron/wsgi.py                                    |    6 +
playbooks/add_mariadb_repo.yaml                    |    3 +
.../legacy/neutron-grenade-dvr-multinode/run.yaml  |   12 +
.../legacy/neutron-grenade-multinode/run.yaml      |   12 +
.../post.yaml                                      |    0
.../run.yaml                                       |   37 +-
.../legacy/neutron-tempest-postgres-full/post.yaml |   15 -
.../legacy/neutron-tempest-postgres-full/run.yaml  |   46 -
.../neutron-tempest-with-os-ken-master/post.yaml   |   15 -
.../neutron-tempest-with-os-ken-master/run.yaml    |   55 -
playbooks/multinode-setup.yaml                     |    4 +
plugin.spec                                        |   81 +
...ect-ports-with-QoS-in-OVS-48c78c156606e724.yaml |    7 +
.../notes/Ussuri-prelude-ca4d793da2d0bc63.yaml     |   28 +
.../accepted_egress_direct-cc23873e213c6919.yaml   |   20 +
.../add-address-scope-rbac-a903ff28f6457606.yaml   |    5 +
...-field-in-port-forwarding-5db3b3f407c7eef4.yaml |    4 +
...ping_enable-config-option-6a0e15e4ed0a2cf7.yaml |    7 +
...tu-writable-api-extension-f7038f85f3494a74.yaml |    2 +-
.../add-subnetpool-rbac-2eb2008bd1b27b11.yaml      |    5 +
...addres-case-insensitivity-750299c11b49a9a8.yaml |    9 +
...te-ovs_integration_bridge-d4d1521c35f999bd.yaml |    6 +
.../notes/dhcp-bulk-updates-0150b764bb1b165f.yaml  |   14 +
...p-host-addr6-list-support-45d104b3f7ce220e.yaml |   25 +
.../notes/drop-python-2-7-9707a901c7d8eab6.yaml    |    5 +
.../notes/external-ports-03050eda7ffe13d5.yaml     |   11 +
...-allocation-with-segments-b90e99a30d096c9d.yaml |    9 +
...ity-group-no-port-on-host-9177e66d4b16e90c.yaml |    8 +
...-routed-provider-networks-c54a54844d9a3926.yaml |    7 +
...rp-responder-true-for-dvr-5aabbfa51945dd5a.yaml |    8 +
...3_agent_graceful_shutdown-87bf3304e6fab8a5.yaml |   10 +
...parent-by-hypervisor-name-3244ed87dc57f950.yaml |   23 +
.../make-mtu-not-nullable-2b2765bc85379545.yaml    |    5 +
...roxy-header-vulnerability-60c44eb7c76d560c.yaml |    8 +
...-on-network-auto-schedule-1ea5e74fd5bb560c.yaml |   14 +
...ovn-igmp-snooping-support-1a6ec8e703311fce.yaml |    5 +
.../radvd_user-config-option-24730a6d686fee18.yaml |   11 +
...-agent_type-config-option-31eea687b4ec2e3a.yaml |    5 +
...remove-get_binding_levels-c4e8b350a196706a.yaml |    6 +
...oup-rule-all-ports-update-2857d80e5742ebc5.yaml |   10 +
...-for-security-group-owner-6635dd3e4c6ab5ee.yaml |    6 +
...rnel-3.13-removed-support-8bb00902dd607746.yaml |    8 +
.../stateful-security-group-04b2902ed9c44e4f.yaml  |   18 +
...ublish-fixed-ip-extension-6a5bb42a048a6671.yaml |   10 +
...orts-during-bulk-creation-23161dd39d779e99.yaml |    5 +
releasenotes/source/index.rst                      |    1 +
.../source/locale/fr/LC_MESSAGES/releasenotes.po   |   90 -
.../source/locale/ja/LC_MESSAGES/releasenotes.po   |  301 --
.../locale/ko_KR/LC_MESSAGES/releasenotes.po       |  103 -
releasenotes/source/train.rst                      |    6 +
requirements.txt                                   |   16 +-
roles/add_mariadb_repo/tasks/main.yaml             |   17 +
setup.cfg                                          |   19 +-
test-requirements.txt                              |    3 +-
tools/abandon_old_reviews.sh                       |    4 +-
tools/configure_for_func_testing.sh                |   27 +-
tools/deploy_rootwrap.sh                           |    5 +-
tools/download_gerrit_change.py                    |   61 +
tools/files_in_patch.py                            |   81 +
tools/migrate_names.py                             |  111 +
tools/migrate_names.txt                            |   49 +
tools/ovn_migration/README.rst                     |   43 +
tools/ovn_migration/hosts.sample                   |   37 +
.../infrared/tripleo-ovn-migration/README.rst      |   33 +
.../infrared/tripleo-ovn-migration/main.yml        |  194 +
.../roles/create-resources/defaults/main.yml       |    9 +
.../roles/create-resources/tasks/main.yml          |   33 +
.../templates/create-resources.sh.j2               |  153 +
.../create-resources/templates/start-pinger.sh.j2  |   58 +
.../roles/prepare-migration/defaults/main.yml      |    7 +
.../roles/prepare-migration/tasks/main.yml         |  181 +
.../templates/start-ovn-migration.sh.j2            |    7 +
tools/ovn_migration/migrate-to-ovn.yml             |  204 ++
.../tripleo_environment/ovn_migration.sh           |  349 ++
.../playbooks/ovn-migration.yml                    |  110 +
.../playbooks/reduce-dhcp-renewal-time.yml         |   24 +
.../playbooks/roles/backup/tasks/main.yml          |   19 +
.../delete-neutron-resources/defaults/main.yml     |    3 +
.../roles/delete-neutron-resources/tasks/main.yml  |   22 +
.../templates/delete-neutron-resources.sh.j2       |   29 +
.../playbooks/roles/migration/defaults/main.yml    |   15 +
.../roles/migration/tasks/activate-ovn.yml         |   15 +
.../roles/migration/tasks/cleanup-dataplane.yml    |   79 +
.../roles/migration/tasks/clone-dataplane.yml      |   15 +
.../playbooks/roles/migration/tasks/main.yml       |   12 +
.../playbooks/roles/migration/tasks/sync-dbs.yml   |   20 +
.../roles/migration/templates/activate-ovn.sh.j2   |   41 +
.../roles/migration/templates/clone-br-int.sh.j2   |   77 +
.../roles/post-migration/defaults/main.yml         |    4 +
.../playbooks/roles/post-migration/tasks/main.yml  |   59 +
.../playbooks/roles/pre-migration/tasks/main.yml   |   17 +
.../roles/resources/cleanup/defaults/main.yml      |    6 +
.../roles/resources/cleanup/tasks/main.yml         |   26 +
.../cleanup/templates/cleanup-resources.sh.j2      |   32 +
.../roles/resources/create/defaults/main.yml       |    5 +
.../roles/resources/create/tasks/main.yml          |   22 +
.../create/templates/create-resources.sh.j2        |  128 +
.../roles/resources/validate/defaults/main.yml     |    5 +
.../roles/resources/validate/tasks/main.yml        |   12 +
.../validate/templates/validate-resources.sh.j2    |   19 +
.../roles/tripleo-update/defaults/main.yml         |    4 +
.../playbooks/roles/tripleo-update/tasks/main.yml  |   24 +
.../templates/generate-ovn-extras.sh.j2            |    7 +
tools/pip_install_src_modules.sh                   |    2 +-
tools/requirements.txt                             |    5 +
tools/tripleo/ovn.yml                              |   51 +
tox.ini                                            |   64 +-
vagrant/ovn/README.rst                             |    6 +
vagrant/ovn/provisioning/boxes.yml                 |    6 +
vagrant/ovn/provisioning/id_rsa                    |   27 +
vagrant/ovn/provisioning/id_rsa.pub                |    1 +
vagrant/ovn/provisioning/provider-setup.sh         |   19 +
vagrant/ovn/provisioning/providers.rb              |   42 +
vagrant/ovn/provisioning/setup-base.sh             |  104 +
vagrant/ovn/provisioning/setup-compute.sh          |  103 +
vagrant/ovn/provisioning/setup-controller.sh       |  130 +
vagrant/ovn/provisioning/setup-db.sh               |   29 +
vagrant/ovn/provisioning/setup-vtep.sh             |   32 +
vagrant/ovn/sparse/README.rst                      |    9 +
vagrant/ovn/sparse/Vagrantfile                     |   96 +
vagrant/ovn/sparse/instances.yml                   |   46 +
zuul.d/base.yaml                                   |   59 +
zuul.d/grenade.yaml                                |   49 +
zuul.d/project.yaml                                |  124 +
zuul.d/rally.yaml                                  |   87 +
zuul.d/tempest-multinode.yaml                      |  252 ++
zuul.d/tempest-singlenode.yaml                     |  308 ++
zuul.d/tripleo.yaml                                |   38 +
741 files changed, 91931 insertions(+), 13736 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index 4ba3f71160..875fc4ba82 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -9 +9 @@ Routes>=2.3.1 # MIT
-debtcollector>=1.2.0 # Apache-2.0
+debtcollector>=1.19.0 # Apache-2.0
@@ -19 +19 @@ netifaces>=0.10.4 # MIT
-neutron-lib>=1.29.1 # Apache-2.0
+neutron-lib>=2.2.0 # Apache-2.0
@@ -21 +21 @@ python-neutronclient>=6.7.0 # Apache-2.0
-tenacity>=3.2.1 # Apache-2.0
+tenacity>=4.4.0 # Apache-2.0
@@ -24 +24 @@ WebOb>=1.8.2 # MIT
-keystoneauth1>=3.4.0 # Apache-2.0
+keystoneauth1>=3.14.0 # Apache-2.0
@@ -49 +49 @@ ovs>=2.8.0 # Apache-2.0
-ovsdbapp>=0.9.1 # Apache-2.0
+ovsdbapp>=1.0.0 # Apache-2.0
@@ -51,2 +51,2 @@ psutil>=3.2.2 # BSD
-pyroute2>=0.5.3;sys_platform!='win32' # Apache-2.0 (+ dual licensed GPL2)
-weakrefmethod>=1.0.2;python_version=='2.7' # PSF
+pyroute2>=0.5.7;sys_platform!='win32' # Apache-2.0 (+ dual licensed GPL2)
+pyOpenSSL>=17.1.0 # Apache-2.0
@@ -58,0 +59,2 @@ os-vif>=1.15.1 # Apache-2.0
+futurist>=1.2.0 # Apache-2.0
+tooz>=1.58.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 3aaac91e36..43d563a78f 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -4,2 +4 @@
-hacking>=1.1.0 # Apache-2.0
-
+hacking>=1.1.0,<1.2.0 # Apache-2.0






More information about the Release-announce mailing list