Merge "Fail if too many nameservers are provided"

This commit is contained in:
Zuul
2019-01-31 18:52:46 +00:00
committed by Gerrit Code Review
2 changed files with 15 additions and 0 deletions

View File

@@ -31,6 +31,7 @@ from oslo_config import fixture as oslo_fixture
from tripleo_common.image import kolla_builder
from tripleoclient import exceptions
from tripleoclient.tests import base
from tripleoclient.v1 import undercloud_config
@@ -173,6 +174,15 @@ class TestNetworkSettings(base.TestCase):
'NetworkGateway': '192.168.24.1'}}}
self.assertEqual(expected, env)
def test_nameserver_toomany_fail(self):
env = {}
self.conf.config(undercloud_nameservers=['1.1.1.1', '1.1.1.2',
'1.1.1.3', '1.1.1.4',
'1.1.1.5', '1.1.1.6'])
self.assertRaises(exceptions.InvalidConfiguration,
undercloud_config._process_network_args,
env)
def test_start_end_all_addresses(self):
self.conf.config(dhcp_start='192.168.24.0',
dhcp_end='192.168.24.255',

View File

@@ -335,6 +335,11 @@ def _process_network_args(env):
env['UndercloudCtlplaneSubnets'][subnet].update(
{param_value: s[param_key]})
env['MasqueradeNetworks'] = _generate_masquerade_networks()
if len(CONF['undercloud_nameservers']) > 5:
raise exceptions.InvalidConfiguration('Too many nameservers provided. '
'Please provide less than 6 '
'servers in undercloud_'
'nameservers.')
env['DnsServers'] = ','.join(CONF['undercloud_nameservers'])