Merge "Fixes including default SDN env file in deploy cmd"
[apex.git] / apex / tests / test_apex_overcloud_deploy.py
index 1df10e4..8ff98a8 100644 (file)
@@ -7,6 +7,7 @@
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
 
+import os
 import sys
 import unittest
 
@@ -26,6 +27,7 @@ from apex.overcloud.deploy import generate_ceph_key
 from apex.overcloud.deploy import prep_storage_env
 from apex.overcloud.deploy import external_network_cmds
 from apex.overcloud.deploy import create_congress_cmds
+from apex.overcloud.deploy import SDN_FILE_MAP
 
 from nose.tools import (
     assert_regexp_matches,
@@ -70,6 +72,14 @@ class TestOvercloudDeploy(unittest.TestCase):
         res = '/usr/share/openstack-tripleo-heat-templates/environments/test'
         assert_equal(build_sdn_env_list(ds, sdn_map), [res])
 
+    def test_build_sdn_env_list_with_default(self):
+        ds = {'sdn_controller': 'opendaylight',
+              'vpn': True}
+        prefix = '/usr/share/openstack-tripleo-heat-templates/environments'
+        res = [os.path.join(prefix, 'neutron-opendaylight.yaml'),
+               os.path.join(prefix, 'neutron-bgpvpn-opendaylight.yaml')]
+        assert_equal(build_sdn_env_list(ds, SDN_FILE_MAP), res)
+
     @patch('apex.overcloud.deploy.prep_storage_env')
     @patch('apex.overcloud.deploy.build_sdn_env_list')
     @patch('builtins.open', mock_open())
@@ -245,9 +255,14 @@ class TestOvercloudDeploy(unittest.TestCase):
               'networks':
               {'tenant':
                {'nic_mapping': {'controller':
-                                {'members': ['test']},
+                                {'members': ['tenant_nic']},
                                 'compute':
-                                {'members': ['test']}}}}}
+                                {'members': ['tenant_nic']}}},
+               'external':
+               [{'nic_mapping': {'controller':
+                                 {'members': ['ext_nic']},
+                                 'compute':
+                                 {'members': ['ext_nic']}}}]}}
         inv = None
         try:
             # Swap stdout
@@ -279,9 +294,14 @@ class TestOvercloudDeploy(unittest.TestCase):
               'networks':
               {'tenant':
                {'nic_mapping': {'controller':
-                                {'members': ['test']},
+                                {'members': ['tenant_nic']},
                                 'compute':
-                                {'members': ['test']}}}}}
+                                {'members': ['tenant_nic']}}},
+               'external':
+               [{'nic_mapping': {'controller':
+                                 {'members': ['ext_nic']},
+                                 'compute':
+                                 {'members': ['ext_nic']}}}]}}
         inv = None
         try:
             # Swap stdout
@@ -291,7 +311,8 @@ class TestOvercloudDeploy(unittest.TestCase):
             # run test
             prep_env(ds, ns, inv, 'opnfv-env.yml', '/net-env.yml', '/tmp')
             output = out.getvalue().strip()
-            assert_in('NeutronVPPAgentPhysnets: \'datacentre:test\'', output)
+            assert_in('NeutronVPPAgentPhysnets: \'datacentre:tenant_nic\'',
+                      output)
             assert_in('NeutronVPPAgentPhysnets', output)
         finally:
             # put stdout back
@@ -311,9 +332,14 @@ class TestOvercloudDeploy(unittest.TestCase):
               'networks':
               {'tenant':
                {'nic_mapping': {'controller':
-                                {'members': ['test']},
+                                {'members': ['tenant_nic']},
                                 'compute':
-                                {'members': ['test']}}}}}
+                                {'members': ['tenant_nic']}}},
+               'external':
+               [{'nic_mapping': {'controller':
+                                 {'members': ['ext_nic']},
+                                 'compute':
+                                 {'members': ['ext_nic']}}}]}}
         inv = MagicMock()
         inv.get_node_counts.return_value = (3, 2)
         try: