All Neutron CI jobs (except for unit, functional and fullstack jobs),
have explicitly defined the network backend used:
- linuxbridge
- ovs
- ovn
That was discussed and approved during the Neutron CI meetings [1].
[1]https://meetings.opendev.org/meetings/neutron_ci/2021/neutron_ci.2021-06-15-15.00.log.html
Change-Id: I036924f13b77dd5957ad5e60b9f536562deb9f05
Added "nova:live_migration_events" flag to subnode neutron.conf file in
"neutron-tempest-multinode-full-py3" CI job. That flag was missing in
the patch implementing this feature [1].
[1]https://review.opendev.org/c/openstack/neutron/+/766277
Change-Id: Idc938a1dc9de3ad77f558df4f4fb4ae5c3de3d21
Related-Bug: #1901707
After switch of the default Neutron backend to ML2/OVN
in devstack we need to set ML2/OVS for proper multinode
jobs explicitly.
This patch configures ML2/OVS as a backend in the
'neutron-tempest-slow-py3', 'neutron-tempest-multinode-full-py3',
'neutron-tempest-dvr-ha-multinode-full' jobs.
Change-Id: I4d59a42db3e50cb1cb156a46cac708425f641b25
After switch of the default Neutron backend to the ML2/OVN
in the Devstack we had 2 rally jobs running actually with the
same Neutron backend.
This patch configures explicitly ML2/OVS as a backend in the
'neutron-rally-task' job so it is like it was before the change in
the Devstack repo.
In order to fix the CI, this patch also skips "test_models_sync" test
cases. Once [1] is fixed and released, we'll be able to create SQL
tables specifying the "_constraints_included" flag. When creating a
table, this flag should be set to "False" in order to be able to set
the "index" and "unique" parameters for each column in the table
definition, as we do now.
"test_update_router_admin_state" is excluded from
"neutron-ovn-tempest-slow" until LP#1890445 is fixed.
Set "test_restart_wsgi_on_sighup_multiple_workers" as unstable.
CI job "neutron-ovn-tempest-slow" has been set to non-voting until
LP#1930402 is fixed.
Related-Bug: #1929518
Related-Bug: #1890445
Related-Bug: #1930402
Related-Bug: #1930367
[1]https://github.com/sqlalchemy/alembic/issues/848
Change-Id: I38ed7931169434fecbbefa3762f51a522ef3c509
dstat has been replaced with pcp-dstat in DevStack.
Depends-On: https://review.opendev.org/c/openstack/devstack/+/791749
Change-Id: I680e534ecf7eb78e451a9a37959aab09b9091141
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
This patch re-enables the test_port_security_macspoofing_port test on
the OVN slow jobs.
Change-Id: I5587992f54abc212e5a4662b0894c5847f784cdb
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
It should helps us understand why in some (rare) cases rule to redirect
packets send 169.254.169.254:80 to port 9697 isn't installed in the
qrouter namespace.
Change-Id: I644ea3d6767db36bfe7f4122ec2c2afe9888dd07
Related-Bug: #1920778
The OVN_BUILD_FROM_SOURCE was introduced by a patch in DevStack [0]
which allows for stacking OVN using packages instead of compiling it
from source (by default that flag is False). Now the jobs compiling OVN
(master ones) should include this flag.
Also since the logs are on different paths depending on how OVN is
installed, we are telling zuul to collect it properly for the compiled
version (this inconsistency is something that perhaps we should fix in
DevStack itself).
[0] https://review.opendev.org/c/openstack/devstack/+/763402
Change-Id: I46654762921aeec7603800005681239cdf202632
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
OVN logs have moved from /var/log/openvswitch that is collected by the
base job to /var/log/ovn
Co-Authored-By: Lucas Alvares Gomes <lucasagomes@gmail.com>
Change-Id: I1e9fe661f55e99ca509dfbc3c1334b358ddb7212
This patch tries to make execution of the CI jobs in the Neutron
queue to be more smart. There is no need to e.g. run
linuxbridge scenario jobs job when only changed files in patch
are in e.g. the openvswitch agent module, or vice versa.
Change-Id: Ie33514da28991fa5952a1d8c289402ecb9ffee49
Tempest replaced the below rolevar for run-tempest role
- tempest_test_blacklist is replaced by tempest_test_exclude_list
- tempest_black_regex is replaced by tempest_exclude_regex
old name are still supported for compatiblity but we recommend
to switch to new one.
Depends-On: https://review.opendev.org/c/openstack/tempest/+/774835
Change-Id: I609c1714a4f630207562a4725456d3d7f87d698e
It was run on 3 nodes but I think there is no real need for that.
Running that on 2 nodes should be enough.
Change-Id: I12406c1f654ba9ad8eb60ffc965293ecbd5b7be5
neutron-tempest-dvr-ha-multinode-full job's computes seems to lack
resource_provider_bandwidths values set, let's see if it solves the
issuse with test_migrate_with_qos_min_bw_allocation and
test_resize_with_qos_min_bw_allocation.
Change-Id: Ie02f9d40716af1b3b4efc3e9340acab7f9af113e
In neutron CI queues we were running tempest-slow-py3 and
tempest-ipv6-only jobs which are defined in tempest repository and runs
all tests, e.g related to Swift or Cinder.
This patch defines new jobs: "neutron-tempest-slow-py3" and
"neutron-tempest-ipv6-only" which inherits from the tempest jobs but
disables Cinder and Swift services.
Additionally "neutron-tempest-ipv6-only" job now runs only
"integrated-networking" tox_envlist.
Change-Id: Icd376c144e1993ca84890c76743fda4196662d9b
The goal of this patch is to avoid the connection disruption during
the live-migration using OVS. Since [1], when a port is migrated,
both the source and the destination hosts are added to the profile
binding information. Initially, the source host binding is activated
and the destination is deactivated.
When the port is created in the destination host (created by Nova),
the port was not configured because the binding was not activated.
The binding (that means, all the OpenFlow rules) was done when Nova
sent the port activation. That happend when the VM was already
running in the destination host. If the OVS agent was loaded, the
port was bound seconds later to the port activation.
Instead, this patch enables the OpenFlow rule creation in the
destination host when the port is created.
Another problem are the "neutron-vif-plugged" events sent by Neutron
to Nova to inform about the port binding. Nova is expecting one single
event informing about the destination port binding. At this moment,
Nova considers the port is bound and ready to transmit data.
Several triggers were firing expectedly this event:
- When the port binding was updated, the port is set to down and then
up again, forcing this event.
- When the port binding was updated, first the binding is deleted and
then updated with the new information. That triggers in the source
host to set the port down and the up again, sending the event.
This patch removes those events, sending the "neutron-vif-plugged"
event only when the port is bound to the destination host (and as
commented before, this is happening now regardless of the binding
activation status).
This feature depends on [2]. If this Nova patch is not in place, Nova
will never plug the port in the destination host and Neutron won't be
able to send the vif-plugged event to Nova to finish the
live-migration process.
Because from Neutron cannot query Nova to know if this patch is in
place, a new temporary configuration option has been created to enable
this feature. The default value will be "False"; that means Neutron
will behave as before.
[1]https://bugs.launchpad.net/neutron/+bug/1580880
[2]https://review.opendev.org/c/openstack/nova/+/767368
Closes-Bug: #1901707
Change-Id: Iee323943ac66e566e5a5e92de1861832e86fc7fc
We don't need to run Swift, Cinder and etcd services in the
Neutron jobs so this patch disables those services on all
such jobs defined in the Neutron repository.
It will skip some tests which aren't really related to Neutron
and will safe some resources on test nodes.
This patch also enables br-ex-tcpdump and br-int-flows services
in the jobs where it was missing.
It may be useful during debugging some failures of those jobs
in the future.
Depends-On: https://review.opendev.org/762622
Change-Id: I0db516b184cf621e4539d11726fe1bd47b53ba05
Multinode OVN jobs are failing very often due to bug [1] so
lets disable dstat service in those jobs for now as workaround
of the problem.
[1] https://bugs.launchpad.net/ubuntu/+source/dstat/+bug/1866619
Change-Id: Id9bb16d9e3e649e1538bc33bd1b7e8eab7e74048
Closes-Bug: #1898863
For other jobs which inherits from neutron-tempest-base it
was changed some time ago.
But ovn multinode jobs don't inherits from that base job
so this patch fixes it for those jobs as well by adding same
configure_ebtables.yaml playbook to pre-run in the
neutron-ovn-multinode-base job.
Change-Id: Icb4fd80133ee10ad6c40e160013b4ab91d2c5a6b
Closes-Bug: #1898211
As the 'all-plugin' tox env is deprecated it is recommended to use
'all' tox env instead.
[1] https://review.opendev.org/#/c/543974/
Change-Id: Iceccc81ca7c888c1035fd64dc07b9a922e05869f
Related-Bug: #1862240
Prior to this patch the OVSDB NB/SB logs and databases weren't been
uploaded as part of the job's run. These files are important for
troubleshooting gate problems.
Change-Id: Ie2c9596d8b24e0e433a1ac0d27115369fc4cf8ef
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
The DevStack module for OVN has now been moved to the DevStack repository,
this patch is deletes it from the Neutron repository.
Depends-On: https://review.opendev.org/#/c/748140/
Change-Id: I2c30b8130525380234d767a7cb46f9bcca2a0d6b
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
There is no real reason we should be using some of the
terms we do, they're outdated, and we're behind other
open-source projects in this respect. Let's switch to
using more inclusive terms in all possible places.
Change-Id: I99913107e803384b34cbd5ca588451b1cf64d594
This is a subset of the changes for implementing the floating IP
port forwarding feature in neutron, using OVN as the backend.
This changeset covers the core implementation for portforwarding/drivers/ovn,
mech_driver, ovn-router as well as a subset of tests.
Port forwarding support in ovn_db_sync is not included here to facilitate review.
That, as well as all other supporting changes, are under the ovn/port_forwarding topic:
https://review.opendev.org/#/q/topic:ovn/port_forwarding+(status:open+OR+status:merged)
Depends-On: https://review.opendev.org/#/c/726478/
Partially-implements: ovn/port_forwarding
Partial-Bug: #1877447
Change-Id: I019fe11ac1ddcf2304f3f144c62d52667fc11dce
This plugin can enable specific neutron plugins, like e.g. QoS so
it should be enabled in all jobs which inherits from the
tempest-integrated-networking job.
Change-Id: I2655130df1210f7f175b79aec2bade28c0e1e977
We recently added segmented network features to OVN,
that means we could add this extension here to the list.
Change-Id: Iab1fa9d810b3cc2e0384144cf33fc6732d55bec1
As we agreed during virtual PTG we want to change
tempest-multinode-full-py3 that it will run only integrated-networking
tests. And then promote it to be voting and gating job.
This new multinode job can replace singlenode tempest-integrated-networking
job so this patch removes this one from the queues too.
Change-Id: Ic61b636625824bbd6b7624a057db308a484ee463
New cirros with recent fixes for metadata service
has been released. Lets update the image version on gate.
Also stop using different images for OVN. Lets use default
settings from devstack.
First we need to merge [2].
[1] e40bcd2964
[2] https://review.opendev.org/#/c/711492/
Change-Id: Idc614f9f25188bd1a1e1d5424274acf04ba99328
There were duplicated methods doing almost the same in terms
of OVS/OVN compilation.
This change:
* move of OVS related compilation code to devstack/lib/ovs
* delete of OVS related compilation code from devstack/lib/ovn_agent
* source unified functions in devstack/lib/ovn_agent from
devstack/lib/ovs
* Unify NEUTRON_PATH variable to NEUTRON_DIR
Closes-Bug: #1877377
Change-Id: Ia012a8e116a276a6674f86366c803e0e2d8ff704
We have separate project now - OVN Octavia provider - and its gate
is responsible for testing OVN integration with Octavia.
Change-Id: I317b7ad54a2f5c5c99bf0bff9eba4d91a1a86491
This patch moves functions to enable br-ex-tcpdump and br-int-flows
services from the ovn devstack plugin to the main neutron devstack
plugin and enables it on all tempest and grenade jobs which are using
neutron-openvswitch-agent as a L2 backend.
Change-Id: Idfea869c08811914124d076da18cec17a12eee49
The test_port_security_macspoofing_port should be blacklisted
back, because of the change [1] that switched OVN_BRANCH/OVS_BRANCH
configuration to the latest stable releases and the
fix [2] that solved [3] is not yet present in latest release.
In addition. We will have discussion during next PTG around if we
should/could run only jobs with OVN release or we can enable also
master jobs. Then we need to explicitely define from which branch
given job runs to prevent such situations like this one in future.
[1] https://review.opendev.org/#/c/726168/
[2] https://patchwork.ozlabs.org/project/openvswitch/patch/20200319122641.473776-1-numans@ovn.org/
[3] https://bugs.launchpad.net/tempest/+bug/1728886
Related-Bug: #1728886
Change-Id: Ic8952e9ffb031ff4becb6ee2f6f5325a55e19dfe