port['network_id'])
# For IPv6, provider rule need to be updated in case router
# interface is created or updated after VM port is created.
- elif port['device_owner'] == n_const.DEVICE_OWNER_ROUTER_INTF:
+ # NOTE (Swami): ROUTER_INTERFACE_OWNERS check is required
+ # since it includes the legacy router interface device owners
+ # and DVR router interface device owners.
+ elif port['device_owner'] in n_const.ROUTER_INTERFACE_OWNERS:
if any(netaddr.IPAddress(fixed_ip['ip_address']).version == 6
for fixed_ip in port['fixed_ips']):
sg_provider_updated_networks.add(
self.fmt, net['network']['id'], **kwargs)
res = self.deserialize(self.fmt, res)
port_id = res['port']['id']
- if device_owner == const.DEVICE_OWNER_ROUTER_INTF:
+ if device_owner in const.ROUTER_INTERFACE_OWNERS:
data = {'port': {'fixed_ips': []}}
req = self.new_update_request('ports', data, port_id)
res = self.deserialize(self.fmt,
'2001:0db8::1')
self.assertTrue(self.notifier.security_groups_provider_updated.called)
+ def test_notify_security_group_dvr_ipv6_gateway_port_added(self):
+ self._test_security_group_port(
+ const.DEVICE_OWNER_DVR_INTERFACE,
+ '2001:0db8::1',
+ '2001:0db8::/64',
+ 6,
+ '2001:0db8::2')
+ self.assertTrue(self.notifier.security_groups_provider_updated.called)
+
def test_notify_security_group_ipv6_normal_port_added(self):
self._test_security_group_port(
None,