It's happening in our CI. We're still using zuulv2 + jenkins + devstack-gate for CI jobs although we're working on migrating to latest zuul but not done yet.
Attached is our local.conf, please take a look if there's any misconfig.
Though I'm not sure why this issue happens, I think we'd better add a check before calling 'self._sb_ovn.chassis_exists' in https://github.com/openstack/neutron/blob/master/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py#L656
some patch like this:
===============================
diff --git a/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py b/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py
index 229ea0f85b..2c129179f9 100644
--- a/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py
+++ b/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py
@@ -653,7 +653,8 @@ class OVNMechanismDriver(api.MechanismDriver): port['id'])
return False
- if not self._sb_ovn.chassis_exists(host):
+ if (hasattr(self._sb_ovn, 'chassis_exists') and
+ not self._sb_ovn.chassis_exists(host)): LOG.debug('No provisioning block for port %(port_id)s since no ' 'OVN chassis for host: %(host)s', {'port_id': port['id'], 'host': host})
===============================
It's happening in our CI. We're still using zuulv2 + jenkins + devstack-gate for CI jobs although we're working on migrating to latest zuul but not done yet.
Attached is our local.conf, please take a look if there's any misconfig.
Though I'm not sure why this issue happens, I think we'd better add a check before calling 'self._ sb_ovn. chassis_ exists' in https:/ /github. com/openstack/ neutron/ blob/master/ neutron/ plugins/ ml2/drivers/ ovn/mech_ driver/ mech_driver. py#L656 ======= ======= ======= === plugins/ ml2/drivers/ ovn/mech_ driver/ mech_driver. py b/neutron/ plugins/ ml2/drivers/ ovn/mech_ driver/ mech_driver. py .2c129179f9 100644 plugins/ ml2/drivers/ ovn/mech_ driver/ mech_driver. py plugins/ ml2/drivers/ ovn/mech_ driver/ mech_driver. py ver(api. MechanismDriver ):
port[ 'id'])
some patch like this:
=======
diff --git a/neutron/
index 229ea0f85b.
--- a/neutron/
+++ b/neutron/
@@ -653,7 +653,8 @@ class OVNMechanismDri
return False
- if not self._sb_ ovn.chassis_ exists( host): self._sb_ ovn, 'chassis_exists') and ovn.chassis_ exists( host)):
LOG. debug(' No provisioning block for port %(port_id)s since no '
'OVN chassis for host: %(host)s',
{'port_ id': port['id'], 'host': host}) ======= ======= ======= ===
+ if (hasattr(
+ not self._sb_
=======
thanks and regards
Sam