Merge "Add router check, subnet attached gateway IP update or deletion"
diff --git a/neutron_tempest_plugin/api/admin/test_routers_ha.py b/neutron_tempest_plugin/api/admin/test_routers_ha.py
index b717a10..2b18728 100644
--- a/neutron_tempest_plugin/api/admin/test_routers_ha.py
+++ b/neutron_tempest_plugin/api/admin/test_routers_ha.py
@@ -64,6 +64,9 @@
set to False, thus making it a "Single Failure Router"
as opposed to a "High Availability Router"
"""
+ # OVN driver doesn't accept ha=False (all OVN routers support HA)
+ if self.is_driver_ovn:
+ raise self.skipException("Test not meant for OVN driver")
name = data_utils.rand_name('router')
router = self._create_admin_router(name, ha=False)
self.assertFalse(router['ha'])
@@ -81,6 +84,9 @@
set to False. Once the router is updated, the ha
attribute will be set to True
"""
+ # OVN driver doesn't accept ha=False (all OVN routers support HA)
+ if self.is_driver_ovn:
+ raise self.skipException("Test not meant for OVN driver")
name = data_utils.rand_name('router')
# router needs to be in admin state down in order to be upgraded to HA
router = self._create_admin_router(name, ha=False,
@@ -101,6 +107,10 @@
deleted, those segmentation data are kept in HA network. This tests
regression of https://bugs.launchpad.net/neutron/+bug/1732543.
"""
+ # Test not meant for OVN implementation of HA
+ if self.is_driver_ovn:
+ raise self.skipException(
+ "Test not meant for OVN implementation of HA")
for i in range(2):
router = self._create_admin_router(
data_utils.rand_name('router%d' % i),
diff --git a/neutron_tempest_plugin/api/base.py b/neutron_tempest_plugin/api/base.py
index 7f96168..b659637 100644
--- a/neutron_tempest_plugin/api/base.py
+++ b/neutron_tempest_plugin/api/base.py
@@ -68,6 +68,21 @@
external_network_id = CONF.network.public_network_id
+ __is_driver_ovn = None
+
+ @classmethod
+ def _is_driver_ovn(cls):
+ ovn_agents = cls.os_admin.network_client.list_agents(
+ binary='ovn-controller')['agents']
+ return len(ovn_agents) > 0
+
+ @property
+ def is_driver_ovn(self):
+ if self.__is_driver_ovn is None:
+ if hasattr(self, 'os_admin'):
+ self.__is_driver_ovn = self._is_driver_ovn()
+ return self.__is_driver_ovn
+
@classmethod
def get_client_manager(cls, credential_type=None, roles=None,
force_new=None):
diff --git a/neutron_tempest_plugin/api/test_revisions.py b/neutron_tempest_plugin/api/test_revisions.py
index 09bb3f1..9034cc3 100644
--- a/neutron_tempest_plugin/api/test_revisions.py
+++ b/neutron_tempest_plugin/api/test_revisions.py
@@ -342,6 +342,9 @@
@utils.requires_ext(extension="router", service="network")
@utils.requires_ext(extension="l3-ha", service="network")
def test_update_router_extra_attributes_bumps_revision(self):
+ # OVN driver doesn't accept ha=False (all OVN routers support HA)
+ if self.is_driver_ovn:
+ raise self.skipException("Test not meant for OVN driver")
# updates from CVR to CVR-HA are supported on every release,
# but only the admin can forcibly create a non-HA router
router_args = {'tenant_id': self.client.project_id,
diff --git a/neutron_tempest_plugin/vpnaas/api/test_vpnaas.py b/neutron_tempest_plugin/vpnaas/api/test_vpnaas.py
index b61fb1b..129680a 100644
--- a/neutron_tempest_plugin/vpnaas/api/test_vpnaas.py
+++ b/neutron_tempest_plugin/vpnaas/api/test_vpnaas.py
@@ -14,10 +14,10 @@
# under the License.
from neutron_lib.db import constants as db_const
+from tempest.common import utils
from tempest.lib.common.utils import data_utils
from tempest.lib import decorators
from tempest.lib import exceptions as lib_exc
-from tempest import test
from neutron_tempest_plugin import config
from neutron_tempest_plugin.vpnaas.api import base_vpnaas as base
@@ -42,7 +42,7 @@
@classmethod
def resource_setup(cls):
- if not test.is_extension_enabled('vpnaas', 'network'):
+ if not utils.is_extension_enabled('vpnaas', 'network'):
msg = "vpnaas extension not enabled."
raise cls.skipException(msg)
super(VPNaaSTestJSON, cls).resource_setup()
diff --git a/zuul.d/base-nested-switch.yaml b/zuul.d/base-nested-switch.yaml
index cb3d32e..8533e07 100644
--- a/zuul.d/base-nested-switch.yaml
+++ b/zuul.d/base-nested-switch.yaml
@@ -24,7 +24,7 @@
parent: neutron-tempest-plugin-base
abstract: true
branches:
- regex: ^(unmaintained|stable/(train|ussuri|victoria|wallaby|xena|yoga|zed)).*$
+ regex: ^(unmaintained|stable/(victoria|wallaby|xena|yoga|zed)).*$
negate: true
# Comment nodeset and vars to switch back to non nested nodes
nodeset: neutron-nested-virt-ubuntu-jammy
@@ -53,4 +53,4 @@
name: neutron-tempest-plugin-base-nested-switch
parent: neutron-tempest-plugin-base
abstract: true
- branches: ^(stable/(train|ussuri|victoria|wallaby|xena)).*$
+ branches: ^(stable/(victoria|wallaby|xena)).*$
diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml
index 92dc844..494e652 100644
--- a/zuul.d/project.yaml
+++ b/zuul.d/project.yaml
@@ -24,44 +24,6 @@
- project-template:
- name: neutron-tempest-plugin-jobs-train
- check:
- jobs:
- - neutron-tempest-plugin-api-train
- - neutron-tempest-plugin-scenario-linuxbridge-train
- - neutron-tempest-plugin-scenario-openvswitch-train
- - neutron-tempest-plugin-scenario-openvswitch-iptables_hybrid-train
- gate:
- jobs:
- - neutron-tempest-plugin-api-train
- #TODO(slaweq): Move neutron-tempest-plugin-dvr-multinode-scenario out of
- # the experimental queue when it will be more stable
- experimental:
- jobs:
- - neutron-tempest-plugin-dvr-multinode-scenario-train
-
-
-- project-template:
- name: neutron-tempest-plugin-jobs-ussuri
- check:
- jobs:
- - neutron-tempest-plugin-api-ussuri
- - neutron-tempest-plugin-scenario-linuxbridge-ussuri
- - neutron-tempest-plugin-scenario-openvswitch-ussuri
- - neutron-tempest-plugin-scenario-openvswitch-iptables_hybrid-ussuri
- - neutron-tempest-plugin-scenario-ovn-ussuri
- - neutron-tempest-plugin-designate-scenario-ussuri
- gate:
- jobs:
- - neutron-tempest-plugin-api-ussuri
- #TODO(slaweq): Move neutron-tempest-plugin-dvr-multinode-scenario out of
- # the experimental queue when it will be more stable
- experimental:
- jobs:
- - neutron-tempest-plugin-dvr-multinode-scenario-ussuri
-
-
-- project-template:
name: neutron-tempest-plugin-jobs-victoria
check:
jobs:
diff --git a/zuul.d/train_jobs.yaml b/zuul.d/train_jobs.yaml
deleted file mode 100644
index 159feb2..0000000
--- a/zuul.d/train_jobs.yaml
+++ /dev/null
@@ -1,266 +0,0 @@
-- job:
- name: neutron-tempest-plugin-api-train
- parent: neutron-tempest-plugin-base
- nodeset: openstack-single-node-bionic
- override-checkout: stable/train
- required-projects: &required-projects-train
- - openstack/neutron
- - name: openstack/neutron-tempest-plugin
- override-checkout: 1.5.0
- - openstack/tempest
- vars:
- devstack_services:
- # Disable OVN services
- br-ex-tcpdump: false
- br-int-flows: false
- ovn-controller: false
- ovn-northd: false
- ovs-vswitchd: false
- ovsdb-server: false
- q-ovn-metadata-agent: false
- # Neutron services
- q-agt: true
- q-dhcp: true
- q-l3: true
- q-meta: true
- q-metering: true
- tempest_concurrency: 4
- tempest_test_regex: ^neutron_tempest_plugin\.api
- # TODO(slaweq): find a way to put this list of extensions in
- # neutron repository and keep it different per branch,
- # then it could be removed from here
- network_api_extensions_common: &api_extensions
- - address-scope
- - agent
- - allowed-address-pairs
- - auto-allocated-topology
- - availability_zone
- - binding
- - default-subnetpools
- - dhcp_agent_scheduler
- - dns-domain-ports
- - dns-integration
- - empty-string-filtering
- - expose-port-forwarding-in-fip
- - expose-l3-conntrack-helper
- - ext-gw-mode
- - external-net
- - extra_dhcp_opt
- - extraroute
- - extraroute-atomic
- - filter-validation
- - fip-port-details
- - flavors
- - floating-ip-port-forwarding
- - floatingip-pools
- - ip-substring-filtering
- - l3-conntrack-helper
- - l3-flavors
- - l3-ha
- - l3_agent_scheduler
- - logging
- - metering
- - multi-provider
- - net-mtu
- - net-mtu-writable
- - network-ip-availability
- - network_availability_zone
- - network-segment-range
- - pagination
- - port-resource-request
- - port-mac-address-regenerate
- - port-security
- - port-security-groups-filtering
- - project-id
- - provider
- - qos
- - qos-bw-minimum-ingress
- - qos-fip
- - quotas
- - quota_details
- - rbac-policies
- - rbac-security-groups
- - router
- - router-admin-state-down-before-update
- - router_availability_zone
- - security-group
- - segment
- - service-type
- - sorting
- - standard-attr-description
- - standard-attr-revisions
- - standard-attr-segment
- - standard-attr-tag
- - standard-attr-timestamp
- - subnet_allocation
- - subnet-service-types
- - subnetpool-prefix-ops
- - trunk
- - trunk-details
- - uplink-status-propagation
- network_api_extensions_tempest:
- - dvr
- network_available_features: &available_features
- -
- devstack_localrc:
- # NOTE(bcafarel) guestmount binary not available on host OS
- IMAGE_URLS: https://cloud-images.ubuntu.com/releases/bionic/release/ubuntu-18.04-server-cloudimg-amd64.img
- ADVANCED_IMAGE_NAME: ubuntu-18.04-server-cloudimg-amd64
- ADVANCED_INSTANCE_TYPE: ds512M
- ADVANCED_INSTANCE_USER: ubuntu
- CUSTOMIZE_IMAGE: false
- NEUTRON_DEPLOY_MOD_WSGI: false
- NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_tempest) | join(',') }}"
- Q_AGENT: openvswitch
- Q_ML2_TENANT_NETWORK_TYPE: vxlan
- Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
- ML2_L3_PLUGIN: router
- devstack_local_conf:
- post-config:
- /$NEUTRON_CORE_PLUGIN_CONF:
- AGENT:
- tunnel_types: gre,vxlan
- ml2:
- type_drivers: flat,geneve,vlan,gre,local,vxlan
- test-config:
- $TEMPEST_CONFIG:
- neutron_plugin_options:
- available_type_drivers: flat,geneve,vlan,gre,local,vxlan
-
-- job:
- name: neutron-tempest-plugin-scenario-openvswitch-train
- parent: neutron-tempest-plugin-openvswitch
- nodeset: openstack-single-node-bionic
- override-checkout: stable/train
- required-projects: *required-projects-train
- vars:
- tempest_test_regex: "\
- (^neutron_tempest_plugin.scenario)|\
- (^tempest.api.compute.servers.test_attach_interfaces)|\
- (^tempest.api.compute.servers.test_multiple_create)"
- network_api_extensions: *api_extensions
- network_available_features: *available_features
- devstack_localrc:
- NETWORK_API_EXTENSIONS: "{{ network_api_extensions | join(',') }}"
- # NOTE(bcafarel) guestmount binary not available on host OS
- IMAGE_URLS: https://cloud-images.ubuntu.com/releases/bionic/release/ubuntu-18.04-server-cloudimg-amd64.img
- ADVANCED_IMAGE_NAME: ubuntu-18.04-server-cloudimg-amd64
- ADVANCED_INSTANCE_TYPE: ds512M
- ADVANCED_INSTANCE_USER: ubuntu
- CUSTOMIZE_IMAGE: false
- devstack_local_conf:
- post-config:
- $NEUTRON_L3_CONF:
- DEFAULT:
- # NOTE(slaweq): on Bionic keepalived doesn't knows this option yet
- keepalived_use_no_track: False
- test-config:
- $TEMPEST_CONFIG:
- network-feature-enabled:
- available_features: ""
- neutron_plugin_options:
- ipv6_metadata: False
-
-- job:
- name: neutron-tempest-plugin-scenario-openvswitch-iptables_hybrid-train
- parent: neutron-tempest-plugin-openvswitch-iptables_hybrid
- nodeset: openstack-single-node-bionic
- override-checkout: stable/train
- required-projects: *required-projects-train
- vars:
- tempest_test_regex: "\
- (^neutron_tempest_plugin.scenario)|\
- (^tempest.api.compute.servers.test_attach_interfaces)|\
- (^tempest.api.compute.servers.test_multiple_create)"
- network_api_extensions: *api_extensions
- network_available_features: *available_features
- devstack_localrc:
- NETWORK_API_EXTENSIONS: "{{ network_api_extensions | join(',') }}"
- # NOTE(bcafarel) guestmount binary not available on host OS
- IMAGE_URLS: https://cloud-images.ubuntu.com/releases/bionic/release/ubuntu-18.04-server-cloudimg-amd64.img
- ADVANCED_IMAGE_NAME: ubuntu-18.04-server-cloudimg-amd64
- ADVANCED_INSTANCE_TYPE: ds512M
- ADVANCED_INSTANCE_USER: ubuntu
- CUSTOMIZE_IMAGE: false
- devstack_local_conf:
- post-config:
- $NEUTRON_L3_CONF:
- DEFAULT:
- # NOTE(slaweq): on Bionic keepalived don't knows this option yet
- keepalived_use_no_track: False
- test-config:
- $TEMPEST_CONFIG:
- network-feature-enabled:
- available_features: ""
- neutron_plugin_options:
- ipv6_metadata: False
-
-- job:
- name: neutron-tempest-plugin-scenario-linuxbridge-train
- parent: neutron-tempest-plugin-linuxbridge
- nodeset: openstack-single-node-bionic
- override-checkout: stable/train
- required-projects: *required-projects-train
- vars:
- tempest_test_regex: "\
- (^neutron_tempest_plugin.scenario)|\
- (^tempest.api.compute.servers.test_attach_interfaces)|\
- (^tempest.api.compute.servers.test_multiple_create)"
- network_api_extensions: *api_extensions
- network_available_features: *available_features
- devstack_localrc:
- NETWORK_API_EXTENSIONS: "{{ network_api_extensions | join(',') }}"
- # NOTE(bcafarel) guestmount binary not available on host OS
- IMAGE_URLS: https://cloud-images.ubuntu.com/releases/bionic/release/ubuntu-18.04-server-cloudimg-amd64.img
- ADVANCED_IMAGE_NAME: ubuntu-18.04-server-cloudimg-amd64
- ADVANCED_INSTANCE_TYPE: ds512M
- ADVANCED_INSTANCE_USER: ubuntu
- CUSTOMIZE_IMAGE: false
- devstack_local_conf:
- post-config:
- $NEUTRON_L3_CONF:
- DEFAULT:
- # NOTE(slaweq): on Bionic keepalived don't knows this option yet
- keepalived_use_no_track: False
- test-config:
- $TEMPEST_CONFIG:
- network-feature-enabled:
- available_features: ""
- neutron_plugin_options:
- ipv6_metadata: False
-
-- job:
- name: neutron-tempest-plugin-dvr-multinode-scenario-train
- parent: neutron-tempest-plugin-dvr-multinode-scenario
- nodeset: openstack-two-node-bionic
- override-checkout: stable/train
- required-projects: *required-projects-train
- vars:
- network_api_extensions_common: *api_extensions
-
-- job:
- name: neutron-tempest-plugin-sfc-train
- parent: neutron-tempest-plugin-sfc
- nodeset: openstack-single-node-bionic
- override-checkout: stable/train
- required-projects: *required-projects-train
- vars:
- network_api_extensions_common: *api_extensions
-
-- job:
- name: neutron-tempest-plugin-bgpvpn-bagpipe-train
- parent: neutron-tempest-plugin-bgpvpn-bagpipe
- nodeset: openstack-single-node-bionic
- override-checkout: stable/train
- required-projects: *required-projects-train
- vars:
- network_api_extensions: *api_extensions
-
-- job:
- name: neutron-tempest-plugin-fwaas-train
- parent: neutron-tempest-plugin-fwaas-ussuri
- nodeset: openstack-single-node-bionic
- override-checkout: stable/train
- required-projects: *required-projects-train
- vars:
- network_api_extensions_common: *api_extensions
diff --git a/zuul.d/ussuri_jobs.yaml b/zuul.d/ussuri_jobs.yaml
deleted file mode 100644
index 5abc741..0000000
--- a/zuul.d/ussuri_jobs.yaml
+++ /dev/null
@@ -1,356 +0,0 @@
-- job:
- name: neutron-tempest-plugin-api-ussuri
- parent: neutron-tempest-plugin-base
- nodeset: openstack-single-node-bionic
- override-checkout: stable/ussuri
- required-projects: &required-projects-ussuri
- - openstack/neutron
- - name: openstack/neutron-tempest-plugin
- override-checkout: 1.6.0
- - openstack/tempest
- vars:
- devstack_services:
- # Disable OVN services
- br-ex-tcpdump: false
- br-int-flows: false
- ovn-controller: false
- ovn-northd: false
- ovs-vswitchd: false
- ovsdb-server: false
- q-ovn-metadata-agent: false
- # Neutron services
- q-agt: true
- q-dhcp: true
- q-l3: true
- q-meta: true
- q-metering: true
- tempest_concurrency: 4
- tempest_test_regex: ^neutron_tempest_plugin\.api
- # TODO(slaweq): find a way to put this list of extensions in
- # neutron repository and keep it different per branch,
- # then it could be removed from here
- network_api_extensions_common: &api_extensions
- - address-scope
- - agent
- - allowed-address-pairs
- - auto-allocated-topology
- - availability_zone
- - binding
- - default-subnetpools
- - dhcp_agent_scheduler
- - dns-domain-ports
- - dns-integration
- - empty-string-filtering
- - expose-port-forwarding-in-fip
- - expose-l3-conntrack-helper
- - ext-gw-mode
- - external-net
- - extra_dhcp_opt
- - extraroute
- - extraroute-atomic
- - filter-validation
- - fip-port-details
- - flavors
- - floating-ip-port-forwarding
- - floatingip-pools
- - ip-substring-filtering
- - l3-conntrack-helper
- - l3-flavors
- - l3-ha
- - l3_agent_scheduler
- - logging
- - metering
- - multi-provider
- - net-mtu
- - net-mtu-writable
- - network-ip-availability
- - network_availability_zone
- - network-segment-range
- - pagination
- - port-resource-request
- - port-mac-address-regenerate
- - port-security
- - port-security-groups-filtering
- - project-id
- - provider
- - qos
- - qos-bw-minimum-ingress
- - qos-fip
- - quotas
- - quota_details
- - rbac-address-scope
- - rbac-policies
- - rbac-security-groups
- - rbac-subnetpool
- - router
- - router-admin-state-down-before-update
- - router_availability_zone
- - security-group
- - segment
- - service-type
- - sorting
- - standard-attr-description
- - standard-attr-revisions
- - standard-attr-segment
- - standard-attr-tag
- - standard-attr-timestamp
- - subnet_allocation
- - subnet-dns-publish-fixed-ip
- - subnet-service-types
- - subnetpool-prefix-ops
- - tag-ports-during-bulk-creation
- - trunk
- - trunk-details
- - uplink-status-propagation
- network_api_extensions_tempest:
- - dvr
- network_available_features: &available_features
- -
- devstack_localrc:
- NEUTRON_DEPLOY_MOD_WSGI: false
- NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_tempest) | join(',') }}"
- Q_AGENT: openvswitch
- Q_ML2_TENANT_NETWORK_TYPE: vxlan
- Q_ML2_PLUGIN_MECHANISM_DRIVERS: openvswitch
- ML2_L3_PLUGIN: router
- # NOTE(bcafarel) guestmount binary not available on host OS
- IMAGE_URLS: https://cloud-images.ubuntu.com/releases/bionic/release/ubuntu-18.04-server-cloudimg-amd64.img
- ADVANCED_IMAGE_NAME: ubuntu-18.04-server-cloudimg-amd64
- ADVANCED_INSTANCE_TYPE: ds512M
- ADVANCED_INSTANCE_USER: ubuntu
- CUSTOMIZE_IMAGE: false
- devstack_local_conf:
- post-config:
- /$NEUTRON_CORE_PLUGIN_CONF:
- AGENT:
- tunnel_types: gre,vxlan
- ml2:
- type_drivers: flat,geneve,vlan,gre,local,vxlan
- test-config:
- $TEMPEST_CONFIG:
- neutron_plugin_options:
- available_type_drivers: flat,geneve,vlan,gre,local,vxlan
-
-
-- job:
- name: neutron-tempest-plugin-scenario-openvswitch-ussuri
- parent: neutron-tempest-plugin-openvswitch
- nodeset: openstack-single-node-bionic
- override-checkout: stable/ussuri
- required-projects: *required-projects-ussuri
- vars:
- tempest_test_regex: "\
- (^neutron_tempest_plugin.scenario)|\
- (^tempest.api.compute.servers.test_attach_interfaces)|\
- (^tempest.api.compute.servers.test_multiple_create)"
- network_api_extensions: *api_extensions
- network_available_features: *available_features
- devstack_localrc: &localrc_scenarios_common
- NETWORK_API_EXTENSIONS: "{{ network_api_extensions | join(',') }}"
- # NOTE(bcafarel) guestmount binary not available on host OS
- IMAGE_URLS: https://cloud-images.ubuntu.com/releases/bionic/release/ubuntu-18.04-server-cloudimg-amd64.img
- ADVANCED_IMAGE_NAME: ubuntu-18.04-server-cloudimg-amd64
- ADVANCED_INSTANCE_TYPE: ds512M
- ADVANCED_INSTANCE_USER: ubuntu
- CUSTOMIZE_IMAGE: false
- devstack_local_conf:
- post-config:
- $NEUTRON_L3_CONF:
- DEFAULT:
- # NOTE(slaweq): on Bionic keepalived don't knows this option yet
- keepalived_use_no_track: False
- test-config:
- $TEMPEST_CONFIG:
- network-feature-enabled:
- available_features: ""
- neutron_plugin_options:
- ipv6_metadata: False
-
-
-- job:
- name: neutron-tempest-plugin-scenario-openvswitch-iptables_hybrid-ussuri
- parent: neutron-tempest-plugin-openvswitch-iptables_hybrid
- nodeset: openstack-single-node-bionic
- override-checkout: stable/ussuri
- required-projects: *required-projects-ussuri
- vars:
- tempest_test_regex: "\
- (^neutron_tempest_plugin.scenario)|\
- (^tempest.api.compute.servers.test_attach_interfaces)|\
- (^tempest.api.compute.servers.test_multiple_create)"
- network_api_extensions: *api_extensions
- network_available_features: *available_features
- # TODO(akatz): remove established tcp session verification test when the
- # bug https://bugzilla.redhat.com/show_bug.cgi?id=1965036 will be fixed
- tempest_exclude_regex: "\
- (^neutron_tempest_plugin.scenario.test_security_groups.NetworkSecGroupTest.test_established_tcp_session_after_re_attachinging_sg)"
- devstack_localrc: *localrc_scenarios_common
- devstack_local_conf:
- post-config:
- $NEUTRON_L3_CONF:
- DEFAULT:
- # NOTE(slaweq): on Bionic keepalived don't knows this option yet
- keepalived_use_no_track: False
- test-config:
- $TEMPEST_CONFIG:
- network-feature-enabled:
- available_features: ""
- neutron_plugin_options:
- ipv6_metadata: False
-
-- job:
- name: neutron-tempest-plugin-scenario-linuxbridge-ussuri
- parent: neutron-tempest-plugin-linuxbridge
- nodeset: openstack-single-node-bionic
- override-checkout: stable/ussuri
- required-projects: *required-projects-ussuri
- vars:
- tempest_test_regex: "\
- (^neutron_tempest_plugin.scenario)|\
- (^tempest.api.compute.servers.test_attach_interfaces)|\
- (^tempest.api.compute.servers.test_multiple_create)"
- network_api_extensions: *api_extensions
- network_available_features: *available_features
- devstack_localrc: *localrc_scenarios_common
- devstack_local_conf:
- post-config:
- $NEUTRON_L3_CONF:
- DEFAULT:
- # NOTE(slaweq): on Bionic keepalived don't knows this option yet
- keepalived_use_no_track: False
- test-config:
- $TEMPEST_CONFIG:
- network-feature-enabled:
- available_features: ""
- neutron_plugin_options:
- ipv6_metadata: False
-
-- job:
- name: neutron-tempest-plugin-scenario-ovn-ussuri
- parent: neutron-tempest-plugin-ovn
- nodeset: openstack-single-node-bionic
- override-checkout: stable/ussuri
- required-projects: *required-projects-ussuri
- vars:
- tempest_test_regex: "\
- (^neutron_tempest_plugin.scenario)|\
- (^tempest.api.compute.servers.test_attach_interfaces)|\
- (^tempest.api.compute.servers.test_multiple_create)"
- network_api_extensions: *api_extensions
- # TODO(haleyb): Remove IPv6Test from blacklist when
- # https://bugs.launchpad.net/neutron/+bug/1881558 is fixed.
- # TODO(slaweq): Remove test_trunk_subport_lifecycle test from the
- # blacklist when bug https://bugs.launchpad.net/neutron/+bug/1885900 will
- # be fixed
- # TODO(jlibosva): Remove the NetworkWritableMtuTest test from the list
- # once east/west fragmentation is supported in core OVN
- tempest_exclude_regex: "\
- (?:neutron_tempest_plugin.scenario.test_ipv6.IPv6Test)|\
- (^neutron_tempest_plugin.scenario.test_trunk.TrunkTest.test_trunk_subport_lifecycle)|\
- (^neutron_tempest_plugin.scenario.test_mtu.NetworkWritableMtuTest)"
- devstack_localrc:
- NETWORK_API_EXTENSIONS: "{{ network_api_extensions | join(',') }}"
- # TODO(mjozefcz): Stop compiling OVS modules when meter action in kernel
- # will be released in Ubuntu Bionic.
- # More info: https://mail.openvswitch.org/pipermail/ovs-discuss/2018-December/048009.html
- OVN_BUILD_MODULES: True
- # TODO(skaplons): v2.13.1 is incompatible with kernel 4.15.0-118, sticking to commit hash until new v2.13 tag is created
- OVS_BRANCH: 0047ca3a0290f1ef954f2c76b31477cf4b9755f5
- OVN_BRANCH: "v20.03.0"
- # NOTE(slaweq): IGMP Snooping requires OVN 20.12
- OVN_IGMP_SNOOPING_ENABLE: False
- # NOTE(bcafarel) guestmount binary not available on host OS
- IMAGE_URLS: https://cloud-images.ubuntu.com/releases/bionic/release/ubuntu-18.04-server-cloudimg-amd64.img
- ADVANCED_IMAGE_NAME: ubuntu-18.04-server-cloudimg-amd64
- ADVANCED_INSTANCE_TYPE: ds512M
- ADVANCED_INSTANCE_USER: ubuntu
- CUSTOMIZE_IMAGE: false
- devstack_local_conf:
- test-config:
- $TEMPEST_CONFIG:
- neutron_plugin_options:
- is_igmp_snooping_enabled: False
-
-- job:
- name: neutron-tempest-plugin-dvr-multinode-scenario-ussuri
- parent: neutron-tempest-plugin-dvr-multinode-scenario
- nodeset: openstack-two-node-bionic
- override-checkout: stable/ussuri
- required-projects: *required-projects-ussuri
- vars:
- network_api_extensions_common: *api_extensions
-
-- job:
- name: neutron-tempest-plugin-designate-scenario-ussuri
- parent: neutron-tempest-plugin-designate-scenario
- nodeset: openstack-single-node-bionic
- override-checkout: stable/ussuri
- required-projects:
- - openstack/neutron
- - name: openstack/neutron-tempest-plugin
- override-checkout: 1.6.0
- - openstack/tempest
- - name: openstack/designate-tempest-plugin
- override-checkout: 0.7.0
- vars:
- network_api_extensions: *api_extensions
- devstack_localrc: *localrc_scenarios_common
-
-- job:
- name: neutron-tempest-plugin-sfc-ussuri
- parent: neutron-tempest-plugin-sfc
- nodeset: openstack-single-node-bionic
- override-checkout: stable/ussuri
- required-projects: *required-projects-ussuri
- vars:
- network_api_extensions_common: *api_extensions
-
-- job:
- name: neutron-tempest-plugin-bgpvpn-bagpipe-ussuri
- parent: neutron-tempest-plugin-bgpvpn-bagpipe
- nodeset: openstack-single-node-bionic
- override-checkout: stable/ussuri
- required-projects: *required-projects-ussuri
- vars:
- network_api_extensions: *api_extensions
-
-- job:
- name: neutron-tempest-plugin-fwaas-ussuri
- parent: neutron-tempest-plugin-base
- nodeset: openstack-single-node-bionic
- timeout: 10800
- override-checkout: stable/ussuri
- required-projects:
- - openstack/neutron-fwaas
- - openstack/neutron
- - name: openstack/neutron-tempest-plugin
- override-checkout: 1.6.0
- - openstack/tempest
- vars:
- tempest_test_regex: ^neutron_tempest_plugin\.fwaas
- devstack_plugins:
- neutron-fwaas: https://opendev.org/openstack/neutron-fwaas.git
- neutron-tempest-plugin: https://opendev.org/openstack/neutron-tempest-plugin.git
- network_api_extensions_common: *api_extensions
- network_api_extensions_fwaas:
- - fwaas_v2
- devstack_localrc:
- NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_fwaas) | join(',') }}"
-
-- job:
- name: neutron-tempest-plugin-dynamic-routing-ussuri
- parent: neutron-tempest-plugin-dynamic-routing
- nodeset: openstack-single-node-bionic
- override-checkout: stable/ussuri
- required-projects: *required-projects-ussuri
- vars:
- network_api_extensions_common: *api_extensions
-
-- job:
- name: neutron-tempest-plugin-vpnaas-ussuri
- parent: neutron-tempest-plugin-vpnaas
- nodeset: openstack-single-node-bionic
- override-checkout: stable/ussuri
- required-projects: *required-projects-ussuri
- vars:
- network_api_extensions_common: *api_extensions