Skip to content

Commit fed9654

Browse files
Miguel Lavalleralonsoh
authored andcommitted
Fix making all user defined flavor routers HA
Since [1] was merged, user defined flavor routers with the HA attribute set to False cannot be created. This change fixes it. Closes-Bug: #2057983 [1] https://review.opendev.org/c/openstack/neutron/+/910889 Change-Id: Ic72979cfe535c1bb8cba77fb82a380c167509060 (cherry picked from commit 26ff51b)
1 parent 14f5d52 commit fed9654

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

neutron/db/ovn_l3_hamode_db.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
from neutron_lib.callbacks import registry
1818
from neutron_lib.callbacks import resources
1919

20+
from neutron.common.ovn import utils
2021
from neutron.db import l3_attrs_db
2122

2223

@@ -31,5 +32,8 @@ def _precommit_router_create(self, resource, event, trigger, payload):
3132
# NOTE(ralonsoh): OVN L3 router HA flag is mandatory and True always,
3233
# enforced by ``OvnDriver.ha_support`` set to ``MANDATORY``. This flag
3334
# cannot be updated.
35+
router = payload.latest_state
36+
if not utils.is_ovn_provider_router(router):
37+
return
3438
router_db = payload.metadata['router_db']
3539
self.set_extra_attr_value(router_db, 'ha', True)

neutron/tests/unit/db/test_ovn_l3_hamode_db.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,3 +48,10 @@ def test_create_router(self):
4848
router_db = self._create_router(router_dict)
4949
router = router_obj.Router.get_object(self.ctx, id=router_db.id)
5050
self.assertTrue(router.extra_attributes.ha)
51+
52+
def test_create_no_ovn_router(self):
53+
router_dict = {'name': 'foo_router', 'admin_state_up': True,
54+
'distributed': False, 'flavor_id': 'uuid'}
55+
router_db = self._create_router(router_dict)
56+
router = router_obj.Router.get_object(self.ctx, id=router_db.id)
57+
self.assertFalse(router.extra_attributes.ha)

0 commit comments

Comments
 (0)