summaryrefslogtreecommitdiffstats
path: root/apex
diff options
context:
space:
mode:
authorTim Rozet <trozet@redhat.com>2018-05-23 16:09:47 -0400
committerTim Rozet <trozet@redhat.com>2018-05-23 16:09:47 -0400
commit42a9303a21a46f9e9b1997ab4c0beceb6b0bf438 (patch)
treefe9bcf57530199d03b51d5747b10c0f59017b5ab /apex
parentdc55f3a5bc343802bc60cd901ef8adcbafd3fe33 (diff)
Default ctlplane to native VLAN
We were not setting any vlan type value for the admin network. This caused an issue when deploying and trying to use a single collapsed network (no net isolation). The issue occurred when trying to create an external neutron network. We happen to check if the phys type is flat or vlan using this attribute to decide what kind of phys type to use for the neutron network. JIRA: APEX-606 Change-Id: I4e24dd5e8b99cef920b8203b820a77d0021631cc Signed-off-by: Tim Rozet <trozet@redhat.com>
Diffstat (limited to 'apex')
-rw-r--r--apex/settings/network_settings.py7
-rw-r--r--apex/tests/test_apex_network_settings.py3
2 files changed, 8 insertions, 2 deletions
diff --git a/apex/settings/network_settings.py b/apex/settings/network_settings.py
index f656683..36d143c 100644
--- a/apex/settings/network_settings.py
+++ b/apex/settings/network_settings.py
@@ -167,10 +167,13 @@ class NetworkSettings(dict):
"""
_network = self.get_network(network)
# if vlan not defined then default it to native
- if network is not ADMIN_NETWORK:
- for role in ROLES:
+ for role in ROLES:
+ if network is not ADMIN_NETWORK:
if 'vlan' not in _network['nic_mapping'][role]:
_network['nic_mapping'][role]['vlan'] = 'native'
+ else:
+ # ctlplane network must be native
+ _network['nic_mapping'][role]['vlan'] = 'native'
cidr = _network.get('cidr')
diff --git a/apex/tests/test_apex_network_settings.py b/apex/tests/test_apex_network_settings.py
index 5e2fa07..764c9ef 100644
--- a/apex/tests/test_apex_network_settings.py
+++ b/apex/tests/test_apex_network_settings.py
@@ -112,6 +112,9 @@ class TestNetworkSettings:
# remove vlan from storage net
storage_net_nicmap['compute'].pop('vlan', None)
assert_is_instance(NetworkSettings(ns), NetworkSettings)
+ for role in ('compute', 'controller'):
+ assert_equal(ns['networks'][ADMIN_NETWORK]['nic_mapping'][
+ role]['vlan'], 'native')
# TODO
# need to manipulate interfaces some how