summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore10
-rw-r--r--apex/clean.py3
-rw-r--r--apex/network/jumphost.py10
-rw-r--r--apex/tests/test_apex_network_jumphost.py23
4 files changed, 32 insertions, 14 deletions
diff --git a/.gitignore b/.gitignore
index 47eaef64..f42d4c6e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -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
+.*
diff --git a/apex/clean.py b/apex/clean.py
index 81ae1770..9d0e648e 100644
--- a/apex/clean.py
+++ b/apex/clean.py
@@ -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()
diff --git a/apex/network/jumphost.py b/apex/network/jumphost.py
index 2ecb7f4e..c28c105e 100644
--- a/apex/network/jumphost.py
+++ b/apex/network/jumphost.py
@@ -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')
diff --git a/apex/tests/test_apex_network_jumphost.py b/apex/tests/test_apex_network_jumphost.py
index a23f1c56..da9703e3 100644
--- a/apex/tests/test_apex_network_jumphost.py
+++ b/apex/tests/test_apex_network_jumphost.py
@@ -203,6 +203,29 @@ class TestNetworkJumpHost:
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=[])
def test_detach_interface_no_bridge(self, dump_ports_func,