Fixed "ip route" commands to work with pyroute2 >= 0.6.10, that
introduces APIv2 for link, neighbour and route [1].
[1]bc0f5e2209
Closes-Bug: #1979031
Change-Id: Id2239b6827485a4d466b0916947428ceabef9139
pyroute2 0.6.11 did some further refactoring of their module imports,
so using pyroute2.netlink.some_func() doesn't work anymore. Since we
do "from pyroute2 import netlink" anyway, use the imported module
everywhere.
Also, mock.patch()ing pyroute2.netlink.rtnl.tcmsg.common.tick_in_usec
doesn't work anymore, but also doesn't seem to be necessary for the
tests to succeed, so just drop it.
Closes-Bug: 1978564
Change-Id: Ie06b987f7efbff8057293893e42bee7b682b9ba1
In some cases, the creation of router was called by `l3 plugin`
directly, didn't call API. In this way, the router's request_body
of the `ndp_proxy` service plugin received has no `enable_ndp_proxy`,
this will result in `ndp_proxy` service plugin raise error.
Closes-Bug: #1978519
Related-Bug: #1877301
Change-Id: I413c33970002532d11de5bc2afb145704a8488a9
There was a code that worked around a bug in openvswitch. The bug was
fixed in openvswitch 2.13 and we no longer use that version. It's safe
to be removed now.
Change-Id: I8d0e1dac4f6a6d201e29863cc76db3f1ff8595ae
Signed-off-by: Jakub Libosvar <libosvar@redhat.com>
Port create/update are most time-consuming operations
on subnet creation. As example, in those cases where
several subnets are created over the same network the
response time for those port operations is linearly
increased as the total subnets increases.
This patch improves the number of queries required on port
operations in order to reduce the response time.
Closes-Bug: #1977831
Change-Id: I0fccf36a2035e8f6c2fa8dab0307358da600c8f7
In ``TestPortsV2`` tests, set the
``neutron.plugins.ml2.plugin.MAX_BIND_TRIES`` to 1 to minimize the
number of retries during a failed port binding. That shortens all
test cases execution time if a port binding is executed.
Trivial-Fix
Change-Id: If0473031797984aab5b36c479fcb774e57ff5624
agent's heartbeat_timestamp returns the current time, not
conducive to agent status troubleshooting.
this patch use agent's updated_at as heartbeat_timestamp.
Closes-bug: #1977629
Change-Id: Idf522a20f9735829ee568020bfed46345a95e294
we cannot find this parameter passed in anywhere except for some unit
tests. currently we have used nb_cfg_timestamp[1] as agent updated
time. there are no other scenarios for this parameter. this patch
remove it and update some unit test.
[1] https://review.opendev.org/c/openstack/neutron/+/802834
Closes-bug: #1978035
Change-Id: Ic964b7ddc70988bb1a822b07be6a1be4d197287e
pyroute2 0.6.11 did some further refactoring of their module imports,
adapt some mocks to that the tests work with both the older and the new
versions.
Change-Id: I00c1b1e81c33cf93372dec21f4a9f409d784a160
The "session.transaction" member "_connections" is a dictionary with the
active database connections of the current transaction. Neutron will use
it to determine if the session is active or not. This parameter will
provide more accurate information than "new", "dirty" or "deleted". A
read (SELECT) operation won't be included on those lists while the
transaction is currently active.
Closes-Bug: #1975542
Change-Id: Ibb75b324950c639d30c77d4e5269a8c53d6a0bb5
OVS translates the QoS and associated queue registers,
attached to a port, into "tc" linux-htb classfull traffic
shaper, applied on the port.
OVS creates a "tc" root class on the port device. On top of
this root class, the queues are represented as child "tc"
classes. In order to define a "min-rate" value ("tc rate"),
a "max-rate" value ("tc ceil") must be provided and higher than
"min-rate".
By default, OVS agent QoS minimum rules do not have a "max-rate"
defined. Before this patch, any minimum bandwidth rule was
limiting the maximum rate to 100Mbit/s, that is the default value
set in "tc ceil". This patch provides the maximum "max-rate" value
for any minimum bandwidth rule.
Closes-Bug: #1977752
Change-Id: I2c6f09548f39cadfe85e57032091a70a5bc978e5
Since master is zed, move tick-tick job to
upgrade from xena by skipping yoga.
This also fixes ovn-grenade-multinode-tick-tick
job.
Depends-On: https://review.opendev.org/c/openstack/devstack/+/844477
Change-Id: Iaebb1da6ce071a705e9dd25f2fc90a5163f7c363
The main purpose of Neutron's validation of the binding profile
is to make sure expected keys are present and that their values
are of the expected type.
The Nova compute component updates the binding profile as part of
instance creation. Depending on the version of the Nova compute
component and which hardware it interfaces with, the information
provided by Nova in the binding profile may differ.
Nova also has limited information at its disposal at the point in
time it updates the port binding profile, so it would be
non-trivial for it to provide information conditionally based on
things like VNIC_TYPE and existing binding profile data.
Make the Neutron binding profile validation more robust for both
upgrade and heterogeneous hardware scenarios by accepting the
presence of surplus keys in the binding profile. The data that
Neutron expects will still be validated and any surplus keys will
be pruned before further processing internally in Neutron.
Closes-Bug: #1975743
Change-Id: I3a91f442a1fd72f9027f10f2b1b6572cee3f8360
IPv4 and IPv6 have different utility in iptables. This patch adds use of
ip6tables the same way as previously used iptables.
Change-Id: I1e8ef2749ac5705563e539a5e9f02c63347b5dbe
Signed-off-by: Jakub Libosvar <libosvar@redhat.com>
Commit [1] added by accident lines to an ovn local.conf sample file. In
this change, the file is restored to its previous state
TrivialFix
[1] https://review.opendev.org/c/openstack/neutron/+/828673
Change-Id: I9a43fa201291002fb1b1a9c76322581aa02f897b