Update the host_id for network:router_gateway interfaces

The ports owned by a router_gateway need to get its host_id property
updated during the failover of a router. Otherwise the port connected
to the external network will always have its host_id set to the value
obtained during creation.

Change-Id: I5eca20e3cc64d7a9e52b0556a3cadd29eb4c821d
Closes-Bug: 1694337
This commit is contained in:
Felipe Reyes
2017-05-19 17:13:52 -04:00
parent 516f038afd
commit d8334b41d2
2 changed files with 22 additions and 5 deletions

View File

@@ -685,7 +685,8 @@ class L3_HA_NAT_db_mixin(l3_dvr_db.L3_NAT_with_dvr_db_mixin,
device_filter = {'device_id': list(states.keys()),
'device_owner':
[constants.DEVICE_OWNER_HA_REPLICATED_INT,
constants.DEVICE_OWNER_ROUTER_SNAT]}
constants.DEVICE_OWNER_ROUTER_SNAT,
constants.DEVICE_OWNER_ROUTER_GW]}
ports = self._core_plugin.get_ports(admin_ctx, filters=device_filter)
active_ports = (port for port in ports
if states[port['device_id']] == n_const.HA_ROUTER_STATE_ACTIVE)