Test job for VPNaaS on OVN

Add a new test job to test VPNaaS on OVN, that will be picked up
by the proposed patch [1] in neutron-vpnaas.
Since VPNaaS for OVN doesn't support IPv6 VMs, skip 6in4 and 6in6 tests.

[1] https://review.opendev.org/c/openstack/neutron-vpnaas/+/765353

Related-Bug: #1905391
Change-Id: I9e9e8e78fd22b5edbc794ec68dbe40302ed0f3fd
This commit is contained in:
Bodo Petermann 2022-06-21 13:48:42 +02:00
parent 9aa8eb4530
commit af70af3e07
2 changed files with 80 additions and 0 deletions

View File

@ -48,6 +48,20 @@ CONF.register_opt(
'neutron_vpnaas_plugin_options'
)
# The VPNaaS drivers for OVN don't support IPv6 VMs
CONF.register_opt(
cfg.BoolOpt('skip_6in4_tests',
default=False,
help='Whether to skip 6in4 test cases.'),
'neutron_vpnaas_plugin_options'
)
CONF.register_opt(
cfg.BoolOpt('skip_6in6_tests',
default=False,
help='Whether to skip 6in6 test cases.'),
'neutron_vpnaas_plugin_options'
)
class Vpnaas(base.BaseTempestTestCase):
"""Test the following topology
@ -285,6 +299,9 @@ class Vpnaas6in4(Vpnaas):
@testtools.skipIf(
CONF.neutron_vpnaas_plugin_options.skip_4in6_6in4_tests,
'VPNaaS 6in4 test is skipped.')
@testtools.skipIf(
CONF.neutron_vpnaas_plugin_options.skip_6in4_tests,
'VPNaaS 6in4 test is skipped.')
def test_vpnaas_6in4(self):
self._test_vpnaas()
@ -296,5 +313,8 @@ class Vpnaas6in6(Vpnaas):
@decorators.idempotent_id('8b503ffc-aeb0-4938-8dba-73c7323e276d')
@testtools.skipUnless(CONF.network_feature_enabled.ipv6,
'IPv6 tests are disabled.')
@testtools.skipIf(
CONF.neutron_vpnaas_plugin_options.skip_6in6_tests,
'VPNaaS 6in6 test is skipped.')
def test_vpnaas_6in6(self):
self._test_vpnaas()

View File

@ -1348,6 +1348,66 @@
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-vpnaas-ovn
parent: neutron-tempest-plugin-base
timeout: 3900
required-projects:
- openstack/neutron
- openstack/neutron-vpnaas
- openstack/neutron-tempest-plugin
- openstack/tempest
vars:
tempest_concurrency: 4
tempest_test_regex: ^neutron_tempest_plugin\.vpnaas
devstack_plugins:
neutron-vpnaas: https://opendev.org/openstack/neutron-vpnaas.git
neutron-tempest-plugin: https://opendev.org/openstack/neutron-tempest-plugin.git
network_api_extensions_common: *api_extensions
network_api_extensions_vpnaas:
- vpnaas
devstack_localrc:
IPSEC_PACKAGE: strongswan
NETWORK_API_EXTENSIONS: "{{ (network_api_extensions_common + network_api_extensions_vpnaas) | join(',') }}"
devstack_services:
q-ovn-vpn-agent: true
devstack_local_conf:
test-config:
$TEMPEST_CONFIG:
neutron_vpnaas_plugin_options:
skip_6in4_tests: true
skip_6in6_tests: true
irrelevant-files:
- ^\.pylintrc$
- ^(test-|)requirements.txt$
- lower-constraints.txt
- ^releasenotes/.*$
- ^doc/.*$
- ^.*\.conf\.sample$
- ^setup.cfg$
- ^.*\.rst$
- ^neutron/locale/.*$
- ^neutron/tests/unit/.*$
- ^neutron/tests/fullstack/.*
- ^neutron/tests/functional/.*
- ^neutron_tempest_plugin/api/test_.*$
- ^neutron_tempest_plugin/scenario/admin/.*$
- ^neutron_tempest_plugin/scenario/test_.*$
- ^neutron_tempest_plugin/(bgpvpn|fwaas|neutron_dynamic_routing|sfc|tap_as_a_service).*$
- ^neutron_tempest_plugin/services/bgp/.*$
- ^tools/.*$
- ^tox.ini$
- ^plugin.spec$
- ^rally-jobs/.*$
- ^roles/.*functional.*$
- ^playbooks/.*dvr-multinode.*$
- ^playbooks/.*dynamic-routing.*$
- ^playbooks/.*functional.*$
- ^playbooks/.*linuxbridge.*$
- ^vagrant/.*$
- ^zuul.d/(?!(project)).*\.yaml
- job:
name: neutron-tempest-plugin-tap-as-a-service
parent: neutron-tempest-plugin-base