Browse Source

Fix broken gate

This is a combination of a number of fixes required to
fix the broken gate.

Set not_implemented_is_error to False.
The Octavia tempest plugin tests are being changed to
better skip tests for not implemented features. Setting
this to False will treat NotImplemented failures as
skips and not errors.

Fix tempest blacklist regex.

Raise error on listener create with 'allowed_cidrs' present.
The allowed_cidrs value could be an empty list if the
request involves the sdk, so make the check account for that.

OVN Octavia provider driver relies now on new features
comming from OVN master. That means that would be great
to use master, at least in the check queue.

Change-Id: I70adcfad3f4d489d94da171670c23dba51d6f2a1
(cherry picked from commit bfd98048cf
(cherry picked from commit 76b20882aa)
(cherry picked from commit bd32eaa069)
changes/24/755324/3
Brian Haley 1 year ago
parent
commit
f98aaef1bf
  1. 14
      ovn_octavia_provider/driver.py
  2. 30
      zuul.d/base.yaml
  3. 6
      zuul.d/project.yaml

14
ovn_octavia_provider/driver.py

@ -1953,6 +1953,16 @@ class OvnProviderDriver(driver_base.ProviderDriver):
user_fault_string=msg,
operator_fault_string=msg)
def _check_for_allowed_cidrs(self, allowed_cidrs):
# TODO(haleyb): add support for this
if isinstance(allowed_cidrs, o_datamodels.UnsetType):
allowed_cidrs = []
if allowed_cidrs:
msg = _('OVN provider does not support allowed_cidrs option')
raise driver_exceptions.UnsupportedOptionError(
user_fault_string=msg,
operator_fault_string=msg)
def loadbalancer_create(self, loadbalancer):
admin_state_up = loadbalancer.admin_state_up
if isinstance(admin_state_up, o_datamodels.UnsetType):
@ -2033,6 +2043,8 @@ class OvnProviderDriver(driver_base.ProviderDriver):
def listener_create(self, listener):
self._check_for_supported_protocols(listener.protocol)
self._check_for_allowed_cidrs(listener.allowed_cidrs)
admin_state_up = listener.admin_state_up
if isinstance(admin_state_up, o_datamodels.UnsetType):
admin_state_up = True
@ -2056,6 +2068,8 @@ class OvnProviderDriver(driver_base.ProviderDriver):
self._ovn_helper.add_request(request)
def listener_update(self, old_listener, new_listener):
self._check_for_allowed_cidrs(new_listener.allowed_cidrs)
request_info = {'id': new_listener.listener_id,
'loadbalancer_id': old_listener.loadbalancer_id,
'protocol': old_listener.protocol,

30
zuul.d/base.yaml

@ -48,8 +48,9 @@
OVS_BRANCH: master
- job:
name: ovn-octavia-provider-dsvm-base
name: ovn-octavia-provider-tempest-base
parent: devstack-tempest
abstract: true
timeout: 7800
required-projects:
- openstack/devstack-gate
@ -99,6 +100,7 @@
l7_protocol_enabled: False
l4_protocol: "TCP"
session_persistence_enabled: False
not_implemented_is_error: False
devstack_services:
c-bak: false
ceilometer-acentral: false
@ -139,14 +141,26 @@
octavia: https://opendev.org/openstack/octavia.git
octavia-tempest-plugin: https://opendev.org/openstack/octavia-tempest-plugin.git
ovn-octavia-provider: https://opendev.org/openstack/ovn-octavia-provider
- job:
name: ovn-octavia-provider-v2-dsvm-scenario
parent: ovn-octavia-provider-dsvm-base
vars:
tempest_test_regex: ^octavia_tempest_plugin.tests.scenario.v2
tempest_test_regex: "^octavia_tempest_plugin.tests.scenario.v2"
tempest_black_regex: "\
(^octavia_tempest_plugin.tests.scenario.v2.test_traffic_ops.TrafficOperationsScenarioTest.test_basic_traffic)|\
(^octavia_tempest_plugin.tests.scenario.v2.test_traffic_ops.TrafficOperationsScenarioTest.test_basic_http_traffic)|\
(^octavia_tempest_plugin.tests.scenario.v2.test_traffic_ops.TrafficOperationsScenarioTest.test_basic_tcp_traffic)|\
(^octavia_tempest_plugin.tests.scenario.v2.test_traffic_ops.TrafficOperationsScenarioTest.test_basic_udp_traffic)"
tempest_concurrency: 2
tox_envlist: all
- job:
name: ovn-octavia-provider-tempest-release
parent: ovn-octavia-provider-tempest-base
vars:
devstack_localrc:
OVN_BRANCH: v20.06.0
OVS_BRANCH: v2.13.0
- job:
name: ovn-octavia-provider-tempest-master
parent: ovn-octavia-provider-tempest-base
vars:
devstack_localrc:
OVN_BRANCH: master
OVS_BRANCH: master

6
zuul.d/project.yaml

@ -12,10 +12,12 @@
- openstack/neutron
- ovn-octavia-provider-functional-release
- ovn-octavia-provider-functional-master
- ovn-octavia-provider-v2-dsvm-scenario
- ovn-octavia-provider-tempest-release
- ovn-octavia-provider-tempest-master:
voting: false
gate:
fail-fast: true
jobs:
- ovn-octavia-provider-functional-release
- ovn-octavia-provider-functional-master
- ovn-octavia-provider-v2-dsvm-scenario
- ovn-octavia-provider-tempest-release
Loading…
Cancel
Save