Merge "Use --bind-dynamic with dnsmasq instead of --bind-interfaces" into stable/queens

This commit is contained in:
Zuul 2019-07-23 17:53:49 +00:00 committed by Gerrit Code Review
commit 22aaf9fa9d
2 changed files with 14 additions and 8 deletions

View File

@ -355,14 +355,10 @@ class Dnsmasq(DhcpLocalProcess):
'--dhcp-leasefile=%s' % self.get_conf_file_name('leases'), '--dhcp-leasefile=%s' % self.get_conf_file_name('leases'),
'--dhcp-match=set:ipxe,175', '--dhcp-match=set:ipxe,175',
'--local-service', '--local-service',
'--bind-dynamic',
] ]
if self.device_manager.driver.bridged: if not self.device_manager.driver.bridged:
cmd += [ cmd += [
'--bind-interfaces',
]
else:
cmd += [
'--bind-dynamic',
'--bridge-interface=%s,tap*' % self.interface_name, '--bridge-interface=%s,tap*' % self.interface_name,
] ]

View File

@ -1205,7 +1205,8 @@ class TestDnsmasq(TestBase):
def _test_spawn(self, extra_options, network=FakeDualNetwork(), def _test_spawn(self, extra_options, network=FakeDualNetwork(),
max_leases=16777216, lease_duration=86400, max_leases=16777216, lease_duration=86400,
has_static=True, no_resolv='--no-resolv', has_static=True, no_resolv='--no-resolv',
has_stateless=True, dhcp_t1=0, dhcp_t2=0): has_stateless=True, dhcp_t1=0, dhcp_t2=0,
bridged=True):
def mock_get_conf_file_name(kind): def mock_get_conf_file_name(kind):
return '/dhcp/%s/%s' % (network.id, kind) return '/dhcp/%s/%s' % (network.id, kind)
@ -1225,8 +1226,12 @@ class TestDnsmasq(TestBase):
'--dhcp-leasefile=/dhcp/%s/leases' % network.id, '--dhcp-leasefile=/dhcp/%s/leases' % network.id,
'--dhcp-match=set:ipxe,175', '--dhcp-match=set:ipxe,175',
'--local-service', '--local-service',
'--bind-interfaces', '--bind-dynamic',
] ]
if not bridged:
expected += [
'--bridge-interface=tap0,tap*'
]
seconds = '' seconds = ''
if lease_duration == -1: if lease_duration == -1:
@ -1300,6 +1305,11 @@ class TestDnsmasq(TestBase):
def test_spawn(self): def test_spawn(self):
self._test_spawn(['--conf-file=', '--domain=openstacklocal']) self._test_spawn(['--conf-file=', '--domain=openstacklocal'])
def test_spawn_not_bridged(self):
self.mock_mgr.return_value.driver.bridged = False
self._test_spawn(['--conf-file=', '--domain=openstacklocal'],
bridged=False)
def test_spawn_infinite_lease_duration(self): def test_spawn_infinite_lease_duration(self):
self.conf.set_override('dhcp_lease_duration', -1) self.conf.set_override('dhcp_lease_duration', -1)
self._test_spawn(['--conf-file=', '--domain=openstacklocal'], self._test_spawn(['--conf-file=', '--domain=openstacklocal'],