Allow to pass more than two DNS while putting 2 DNS
Until now, when we pass more than 2 DNS, only the first one is added in
the ifcg-* config files.
This patch-set proves the issue, and proves the correction actually works.
Change-Id: I70a779782ab87cd4f74f3c50b0e649f503b386e3
Closes-Bug: #1716171
(cherry picked from commit 8ddab87c6e
)
This commit is contained in:
parent
77fe5922bd
commit
9ce34d529d
|
@ -398,10 +398,10 @@ class IfcfgNetConfig(os_net_config.NetConfig):
|
|||
data += "DHCLIENTARGS=%s\n" % base_opt.dhclient_args
|
||||
if base_opt.dns_servers:
|
||||
data += "DNS1=%s\n" % base_opt.dns_servers[0]
|
||||
if len(base_opt.dns_servers) == 2:
|
||||
if len(base_opt.dns_servers) >= 2:
|
||||
data += "DNS2=%s\n" % base_opt.dns_servers[1]
|
||||
elif len(base_opt.dns_servers) > 2:
|
||||
logger.warning('ifcfg format supports a max of 2 dns servers.')
|
||||
if len(base_opt.dns_servers) > 2:
|
||||
logger.warning('ifcfg format supports max 2 resolvers.')
|
||||
return data
|
||||
|
||||
def _add_routes(self, interface_name, routes=[]):
|
||||
|
|
|
@ -873,6 +873,22 @@ NM_CONTROLLED=no
|
|||
BOOTPROTO=none
|
||||
DNS1=1.2.3.4
|
||||
DNS2=5.6.7.8
|
||||
"""
|
||||
self.assertEqual(em1_config, self.get_interface_config('em1'))
|
||||
|
||||
def test_interface_more_dns_servers(self):
|
||||
interface1 = objects.Interface('em1', dns_servers=['1.2.3.4',
|
||||
'5.6.7.8',
|
||||
'9.10.11.12'])
|
||||
self.provider.add_interface(interface1)
|
||||
em1_config = """# This file is autogenerated by os-net-config
|
||||
DEVICE=em1
|
||||
ONBOOT=yes
|
||||
HOTPLUG=no
|
||||
NM_CONTROLLED=no
|
||||
BOOTPROTO=none
|
||||
DNS1=1.2.3.4
|
||||
DNS2=5.6.7.8
|
||||
"""
|
||||
self.assertEqual(em1_config, self.get_interface_config('em1'))
|
||||
|
||||
|
|
Loading…
Reference in New Issue