]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Disable dhcp_domain distribution when dhcp_domain is empty
authorNachi Ueno <nachi@nttmcl.com>
Tue, 15 Jan 2013 17:54:59 +0000 (09:54 -0800)
committerNachi Ueno <nachi@nttmcl.com>
Tue, 29 Jan 2013 20:49:52 +0000 (12:49 -0800)
fixes bug 1099625

Change-Id: Ib86770345c46a0dd8bb38a4c3e435420170828af

quantum/agent/linux/dhcp.py
quantum/tests/unit/test_linux_dhcp.py

index 1df41439d682f8cd596fd8b476ffbc2baf932002..296688f882c196f75a16b7225039b8a6a0736fe3 100644 (file)
@@ -221,9 +221,8 @@ class Dnsmasq(DhcpLocalProcess):
             '--bind-interfaces',
             '--interface=%s' % self.interface_name,
             '--except-interface=lo',
-            '--domain=%s' % self.conf.dhcp_domain,
-            '--pid-file=%s' % self.get_conf_file_name('pid',
-                                                      ensure_conf_dir=True),
+            '--pid-file=%s' % self.get_conf_file_name(
+                'pid', ensure_conf_dir=True),
             #TODO (mark): calculate value from cidr (defaults to 150)
             #'--dhcp-lease-max=%s' % ?,
             '--dhcp-hostsfile=%s' % self._output_hosts_file(),
@@ -252,6 +251,9 @@ class Dnsmasq(DhcpLocalProcess):
         if self.conf.dnsmasq_dns_server:
             cmd.append('--server=%s' % self.conf.dnsmasq_dns_server)
 
+        if self.conf.dhcp_domain:
+            cmd.append('--domain=%s' % self.conf.dhcp_domain)
+
         if self.namespace:
             ip_wrapper = ip_lib.IPWrapper(self.root_helper, self.namespace)
             ip_wrapper.netns.execute(cmd, addl_env=env)
index 27020ea52c0a71a426ebcc668d15d6af1c9e3cf9..7ad4444a7b91788dc1f071259ad4ad2b86703728 100644 (file)
@@ -425,7 +425,6 @@ class TestDnsmasq(TestBase):
             '--bind-interfaces',
             '--interface=tap0',
             '--except-interface=lo',
-            '--domain=openstacklocal',
             '--pid-file=/dhcp/cccccccc-cccc-cccc-cccc-cccccccccccc/pid',
             '--dhcp-hostsfile=/dhcp/cccccccc-cccc-cccc-cccc-cccccccccccc/host',
             '--dhcp-optsfile=/dhcp/cccccccc-cccc-cccc-cccc-cccccccccccc/opts',
@@ -433,8 +432,7 @@ class TestDnsmasq(TestBase):
              'dnsmasq-lease-update'),
             '--leasefile-ro',
             '--dhcp-range=set:tag0,192.168.0.0,static,120s',
-            '--dhcp-range=set:tag1,fdca:3ba5:a17a:4ba3::,static,120s',
-        ]
+            '--dhcp-range=set:tag1,fdca:3ba5:a17a:4ba3::,static,120s']
         expected.extend(extra_options)
 
         self.execute.return_value = ('', '')
@@ -465,15 +463,21 @@ class TestDnsmasq(TestBase):
                                                      check_exit_code=True)
 
     def test_spawn(self):
-        self._test_spawn(['--conf-file='])
+        self._test_spawn(['--conf-file=', '--domain=openstacklocal'])
 
     def test_spawn_cfg_config_file(self):
         self.conf.set_override('dnsmasq_config_file', '/foo')
-        self._test_spawn(['--conf-file=/foo'])
+        self._test_spawn(['--conf-file=/foo', '--domain=openstacklocal'])
+
+    def test_spawn_no_dhcp_domain(self):
+        self.conf.set_override('dhcp_domain', '')
+        self._test_spawn(['--conf-file='])
 
     def test_spawn_cfg_dns_server(self):
         self.conf.set_override('dnsmasq_dns_server', '8.8.8.8')
-        self._test_spawn(['--conf-file=', '--server=8.8.8.8'])
+        self._test_spawn(['--conf-file=',
+                          '--server=8.8.8.8',
+                          '--domain=openstacklocal'])
 
     def test_output_opts_file(self):
         fake_v6 = 'gdca:3ba5:a17a:4ba3::1'