self.conf, network)
for subnet in network.subnets:
- if subnet.enable_dhcp and subnet.ip_version == 4:
+ if subnet.enable_dhcp:
if self.call_driver('enable', network):
- if self.conf.use_namespaces and enable_metadata:
+ if (subnet.ip_version == 4 and self.conf.use_namespaces
+ and enable_metadata):
self.enable_isolated_metadata_proxy(network)
enable_metadata = False # Don't trigger twice
self.cache.put(network)
network_id='12345678-1234-5678-1234567890ab',
cidr='192.168.1.1/24', enable_dhcp=True))
+fake_ipv6_subnet = dhcp.DictModel(dict(id='bbbbbbbb-1111-2222-bbbbbbbbbbbb',
+ network_id='12345678-1234-5678-1234567890ab',
+ cidr='2001:0db8::1:0:0:1/128', enable_dhcp=True,
+ tenant_id=fake_tenant_id,
+ gateway_ip='2001:0db8::1:0:0:1', ip_version=6))
+
fake_meta_subnet = dhcp.DictModel(dict(id='bbbbbbbb-1111-2222-bbbbbbbbbbbb',
network_id='12345678-1234-5678-1234567890ab',
cidr='169.254.169.252/30',
subnets=[fake_subnet1, fake_subnet2],
ports=[fake_port1]))
+fake_network_ipv6 = dhcp.NetModel(True, dict(
+ id='12345678-1234-5678-1234567890ab',
+ tenant_id='aaaaaaaa-aaaa-aaaa-aaaaaaaaaaaa',
+ admin_state_up=True,
+ subnets=[fake_ipv6_subnet]))
+
isolated_network = dhcp.NetModel(
True, dict(
id='12345678-1234-5678-1234567890ab',
def test_enable_dhcp_helper(self):
self._enable_dhcp_helper(fake_network)
+ def test_enable_dhcp_helper_ipv6_network(self):
+ self._enable_dhcp_helper(fake_network_ipv6)
+
def test_enable_dhcp_helper_down_network(self):
self.plugin.get_network_info.return_value = fake_down_network
self.dhcp.enable_dhcp_helper(fake_down_network.id)