Merge "l3_extra_gws: Add PRECOMMIT_UPDATE receiver"

This commit is contained in:
Zuul 2023-12-02 01:20:54 +00:00 committed by Gerrit Code Review
commit 0f5f5c6aa8
1 changed files with 11 additions and 1 deletions

View File

@ -79,7 +79,7 @@ class ExtraGatewaysDbOnlyMixin(l3_gwmode_db.L3_NAT_dbonly_mixin):
self._remove_all_gateways(payload.context, payload.resource_id)
@registry.receives(resources.ROUTER, [events.PRECOMMIT_CREATE])
def _process_bfd_ecmp_request(self, resource, event, trigger, payload):
def _process_bfd_ecmp_create(self, resource, event, trigger, payload):
attr_defaults = {
l3_enable_default_route_ecmp.ENABLE_DEFAULT_ROUTE_ECMP: (
cfg.CONF.enable_default_route_ecmp),
@ -93,6 +93,16 @@ class ExtraGatewaysDbOnlyMixin(l3_gwmode_db.L3_NAT_dbonly_mixin):
if value is not None:
self.set_extra_attr_value(router_db, attr, value)
@registry.receives(resources.ROUTER, [events.PRECOMMIT_UPDATE])
def _process_bfd_ecmp_update(self, resource, event, trigger, payload):
router = payload.request_body
router_db = payload.desired_state
for attr in (l3_enable_default_route_bfd.ENABLE_DEFAULT_ROUTE_BFD,
l3_enable_default_route_ecmp.ENABLE_DEFAULT_ROUTE_ECMP):
value = router.get(attr, None)
if value is not None:
self.set_extra_attr_value(router_db, attr, value)
def _add_external_gateways(
self, context, router_id, gw_info_list, payload):
"""Add external gateways to a router."""