Merge "Freezes RDO images for Euphrates"
authorFeng Pan <fpan@redhat.com>
Wed, 20 Sep 2017 02:26:50 +0000 (02:26 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Wed, 20 Sep 2017 02:26:50 +0000 (02:26 +0000)
.gitignore
apex/clean.py
apex/network/jumphost.py
apex/tests/test_apex_network_jumphost.py

index 47eaef6..f42d4c6 100644 (file)
@@ -1,17 +1,11 @@
 *~
 *.pyc
-.*.sw?
-.coverage
 /docs_build/
 /docs_output/
 /releng/
-.build/
-.cache/
-ci/apex_build.log
-ci/apex_deploy.log
-.tox/
 apex.egg-info/
 /apex/tests/playbooks/*.retry
 coverage.xml
 nosetests.xml
-ci/apex_clean.log
+ci/*.log
+.*
index 81ae177..9d0e648 100644 (file)
@@ -95,7 +95,7 @@ def clean_ssh_keys(key_file='/root/.ssh/authorized_keys'):
 
 def main():
     clean_parser = argparse.ArgumentParser()
-    clean_parser.add_argument('-f',
+    clean_parser.add_argument('-i',
                               dest='inv_file',
                               required=False,
                               default=None,
@@ -134,5 +134,6 @@ def main():
 
     logging.info('Apex clean complete!')
 
+
 if __name__ == '__main__':
     main()
index 2ecb7f4..c28c105 100644 (file)
@@ -227,15 +227,14 @@ def detach_interface_from_ovs(network):
     orig_ifcfg_file = os.path.join(NET_CFG_PATH,
                                    "ifcfg-{}.orig".format(real_interface))
     ifcfg_file = orig_ifcfg_file[:-len('.orig')]
+    bridge_ifcfg_file = os.path.join(NET_CFG_PATH,
+                                     "ifcfg-{}".format(bridge))
     if os.path.isfile(orig_ifcfg_file):
         logging.debug("Original interface file found: "
                       "{}".format(orig_ifcfg_file))
-        shutil.move(orig_ifcfg_file, ifcfg_file)
     else:
         logging.info("No original ifcfg file found...will attempt to use "
-                     "bridge icfg file and re-create")
-        bridge_ifcfg_file = os.path.join(NET_CFG_PATH,
-                                         "ifcfg-{}".format(bridge))
+                     "bridge ifcfg file and re-create")
         if os.path.isfile(bridge_ifcfg_file):
             ifcfg_params = generate_ifcfg_params(bridge_ifcfg_file, network)
             if_content = """DEVICE={}
@@ -298,6 +297,7 @@ def remove_ovs_bridge(network):
                                          "ifcfg-{}".format(bridge))
         if os.path.isfile(bridge_ifcfg_file):
             os.remove(bridge_ifcfg_file)
-            logging.debug("Bridge ifcfg file removed: {}".format)
+            logging.debug("Bridge ifcfg file removed: {}".format(
+                bridge_ifcfg_file))
         else:
             logging.debug('Bridge ifcfg file not found')
index a23f1c5..da9703e 100644 (file)
@@ -202,6 +202,29 @@ class TestNetworkJumpHost:
             if os.path.isfile(ifcfg_path):
                 os.remove(ifcfg_path)
 
+    @patch('subprocess.check_call')
+    @patch('apex.network.jumphost.is_ovs_bridge', return_value=True)
+    @patch('apex.network.jumphost.dump_ovs_ports', return_value=['enpfakes0'])
+    def test_detach_interface_orig_exists(self, dump_ports_func,
+                                          is_bridge_func, subprocess_func):
+        ifcfg_dir = con.TEST_DUMMY_CONFIG
+        shutil.copyfile(os.path.join(ifcfg_dir, 'ifcfg-br-dummy'),
+                        os.path.join(ifcfg_dir, 'ifcfg-br-admin'))
+        shutil.copyfile(os.path.join(ifcfg_dir, 'ifcfg-dummy'),
+                        os.path.join(ifcfg_dir, 'ifcfg-enpfakes0.orig'))
+        jumphost.NET_CFG_PATH = ifcfg_dir
+        output = jumphost.detach_interface_from_ovs('admin')
+        assert output is None
+        assert os.path.isfile(os.path.join(ifcfg_dir, 'ifcfg-enpfakes0'))
+        assert os.path.isfile(os.path.join(ifcfg_dir, 'ifcfg-br-admin'))
+        assert not os.path.isfile(os.path.join(ifcfg_dir,
+                                               'ifcfg-enpfakes0.orig'))
+        for ifcfg in ('ifcfg-enpfakes0', 'ifcfg-enpfakes0.orig',
+                      'ifcfg-br-admin'):
+            ifcfg_path = os.path.join(ifcfg_dir, ifcfg)
+            if os.path.isfile(ifcfg_path):
+                os.remove(ifcfg_path)
+
     @patch('subprocess.check_call')
     @patch('apex.network.jumphost.is_ovs_bridge', return_value=False)
     @patch('apex.network.jumphost.dump_ovs_ports', return_value=[])