diff options
-rwxr-xr-x | ci/prepare_env.py | 12 | ||||
-rw-r--r-- | ci/testcases.yaml | 2 | ||||
-rwxr-xr-x | testcases/Controllers/ODL/OpenDaylightTesting.py | 2 | ||||
-rw-r--r-- | testcases/Controllers/ONOS/Sfc/Sfc.py | 1 | ||||
-rwxr-xr-x | testcases/Controllers/ONOS/Teston/onosfunctest.py | 1 | ||||
-rwxr-xr-x | testcases/OpenStack/rally/run_rally-cert.py | 2 | ||||
-rwxr-xr-x | testcases/OpenStack/tempest/gen_tempest_conf.py | 2 | ||||
-rwxr-xr-x | testcases/OpenStack/tempest/run_tempest.py | 7 | ||||
-rw-r--r-- | testcases/OpenStack/vPing/vping_util.py | 1 | ||||
-rwxr-xr-x | testcases/features/copper.py | 5 | ||||
-rwxr-xr-x | testcases/features/doctor.py | 5 | ||||
-rwxr-xr-x | testcases/features/domino.py | 5 | ||||
-rwxr-xr-x | testcases/features/promise.py | 1 | ||||
-rwxr-xr-x | testcases/features/sfc/sfc.py | 106 | ||||
-rwxr-xr-x | testcases/vnf/vIMS/vIMS.py | 6 | ||||
-rwxr-xr-x | testcases/vnf/vRNC/parser.py | 5 | ||||
-rw-r--r-- | utils/functest_utils.py | 61 |
17 files changed, 105 insertions, 119 deletions
diff --git a/ci/prepare_env.py b/ci/prepare_env.py index 116b1a6e..3a9e52ba 100755 --- a/ci/prepare_env.py +++ b/ci/prepare_env.py @@ -225,7 +225,7 @@ def install_rally(): logger.info("Creating Rally environment...") cmd = "rally deployment destroy opnfv-rally" - ft_utils.execute_command(cmd, logger=logger, exit_on_error=False, + ft_utils.execute_command(cmd, exit_on_error=False, error_msg=("Deployment %s does not exist." % DEPLOYMENT_MAME), verbose=False) rally_conf = os_utils.get_credentials_for_rally() @@ -233,27 +233,27 @@ def install_rally(): json.dump(rally_conf, fp) cmd = "rally deployment create --file=rally_conf.json --name=" cmd += DEPLOYMENT_MAME - ft_utils.execute_command(cmd, logger, + ft_utils.execute_command(cmd, error_msg="Problem creating Rally deployment") logger.info("Installing tempest from existing repo...") cmd = ("rally verify install --source " + TEMPEST_REPO_DIR + " --system-wide") - ft_utils.execute_command(cmd, logger, + ft_utils.execute_command(cmd, error_msg="Problem installing Tempest.") cmd = "rally deployment check" - ft_utils.execute_command(cmd, logger, + ft_utils.execute_command(cmd, error_msg=("OpenStack not responding or " "faulty Rally deployment.")) cmd = "rally show images" - ft_utils.execute_command(cmd, logger, + ft_utils.execute_command(cmd, error_msg=("Problem while listing " "OpenStack images.")) cmd = "rally show flavors" - ft_utils.execute_command(cmd, logger, + ft_utils.execute_command(cmd, error_msg=("Problem while showing " "OpenStack flavors.")) diff --git a/ci/testcases.yaml b/ci/testcases.yaml index 1fa0a4c0..4fcdd1b0 100644 --- a/ci/testcases.yaml +++ b/ci/testcases.yaml @@ -161,7 +161,7 @@ tiers: Test suite for policy management based on OpenStack Congress dependencies: installer: '(apex)|(joid)' - scenario: '' + scenario: '^((?!lxd).)*$' - name: moon criteria: 'status == "PASS"' diff --git a/testcases/Controllers/ODL/OpenDaylightTesting.py b/testcases/Controllers/ODL/OpenDaylightTesting.py index 22df9f66..173de87f 100755 --- a/testcases/Controllers/ODL/OpenDaylightTesting.py +++ b/testcases/Controllers/ODL/OpenDaylightTesting.py @@ -172,7 +172,7 @@ class ODLTestCases: details['description'] = result.suite.name details['tests'] = visitor.get_data() if not ft_utils.push_results_to_db( - "functest", "odl", cls.logger, start_time, stop_time, + "functest", "odl", start_time, stop_time, result.suite.status, details): cls.logger.error("Cannot push ODL results to DB") return False diff --git a/testcases/Controllers/ONOS/Sfc/Sfc.py b/testcases/Controllers/ONOS/Sfc/Sfc.py index a5201987..99d07aae 100644 --- a/testcases/Controllers/ONOS/Sfc/Sfc.py +++ b/testcases/Controllers/ONOS/Sfc/Sfc.py @@ -217,7 +217,6 @@ class Sfc: logger.info("Result is " + status) functest_utils.push_results_to_db("functest", "onos_sfc", - logger, start_time, stop_time, status, diff --git a/testcases/Controllers/ONOS/Teston/onosfunctest.py b/testcases/Controllers/ONOS/Teston/onosfunctest.py index 2790e694..717df82a 100755 --- a/testcases/Controllers/ONOS/Teston/onosfunctest.py +++ b/testcases/Controllers/ONOS/Teston/onosfunctest.py @@ -249,7 +249,6 @@ def OnosTest(): functest_utils.push_results_to_db("functest", "onos", - logger, start_time, stop_time, status, diff --git a/testcases/OpenStack/rally/run_rally-cert.py b/testcases/OpenStack/rally/run_rally-cert.py index f3eb79d2..f7199d30 100755 --- a/testcases/OpenStack/rally/run_rally-cert.py +++ b/testcases/OpenStack/rally/run_rally-cert.py @@ -362,7 +362,6 @@ def run_task(test_name): logger.debug("Push Rally detailed results into DB") functest_utils.push_results_to_db("functest", "Rally_details", - logger, start_time, stop_time, status, @@ -495,7 +494,6 @@ def main(): logger.debug("Pushing Rally summary into DB...") functest_utils.push_results_to_db("functest", case_name, - logger, start_time, stop_time, status, diff --git a/testcases/OpenStack/tempest/gen_tempest_conf.py b/testcases/OpenStack/tempest/gen_tempest_conf.py index 4aa814a5..688a9240 100755 --- a/testcases/OpenStack/tempest/gen_tempest_conf.py +++ b/testcases/OpenStack/tempest/gen_tempest_conf.py @@ -116,7 +116,7 @@ def main(): if not os.path.exists(TEMPEST_RESULTS_DIR): os.makedirs(TEMPEST_RESULTS_DIR) - deployment_dir = ft_utils.get_deployment_dir(logger) + deployment_dir = ft_utils.get_deployment_dir() configure_tempest_multisite(deployment_dir) diff --git a/testcases/OpenStack/tempest/run_tempest.py b/testcases/OpenStack/tempest/run_tempest.py index 306664fe..9285b67d 100755 --- a/testcases/OpenStack/tempest/run_tempest.py +++ b/testcases/OpenStack/tempest/run_tempest.py @@ -166,7 +166,7 @@ def configure_tempest(deployment_dir): logger.debug("Generating new tempest.conf file...") cmd = "rally verify genconfig" - ft_utils.execute_command(cmd, logger) + ft_utils.execute_command(cmd) logger.debug("Finding tempest.conf file...") if not os.path.isfile(tempest_conf_file): @@ -228,7 +228,7 @@ def generate_test_list(deployment_dir, mode): testr_mode = 'tempest.api.' + mode cmd = ("cd " + deployment_dir + ";" + "testr list-tests " + testr_mode + ">" + TEMPEST_RAW_LIST + ";cd") - ft_utils.execute_command(cmd, logger) + ft_utils.execute_command(cmd) def apply_tempest_blacklist(): @@ -373,7 +373,6 @@ def run_tempest(OPTION): try: ft_utils.push_results_to_db("functest", case_name, - None, start_time, stop_time, status, @@ -399,7 +398,7 @@ def main(): if not os.path.exists(TEMPEST_RESULTS_DIR): os.makedirs(TEMPEST_RESULTS_DIR) - deployment_dir = ft_utils.get_deployment_dir(logger) + deployment_dir = ft_utils.get_deployment_dir() create_tempest_resources() if "" == args.conf: diff --git a/testcases/OpenStack/vPing/vping_util.py b/testcases/OpenStack/vPing/vping_util.py index 3f4adae7..9c35c230 100644 --- a/testcases/OpenStack/vPing/vping_util.py +++ b/testcases/OpenStack/vPing/vping_util.py @@ -456,7 +456,6 @@ def push_result(report, case, start_time, stop_time, details): logger.debug("Pushing vPing %s results into DB..." % case) ft_utils.push_results_to_db('functest', case, - logger, start_time, stop_time, details['status'], diff --git a/testcases/features/copper.py b/testcases/features/copper.py index c79754a1..e03e60f1 100755 --- a/testcases/features/copper.py +++ b/testcases/features/copper.py @@ -42,7 +42,7 @@ def main(): start_time = time.time() - ret_val = functest_utils.execute_command(cmd, logger, exit_on_error=False) + ret_val = functest_utils.execute_command(cmd, exit_on_error=False) stop_time = time.time() duration = round(stop_time - start_time, 1) @@ -58,14 +58,13 @@ def main(): 'duration': duration, 'status': test_status, } - functest_utils.logger_test_results(logger, "Copper", + functest_utils.logger_test_results("Copper", "copper-notification", details['status'], details) try: if args.report: functest_utils.push_results_to_db("copper", "copper-notification", - logger, start_time, stop_time, details['status'], diff --git a/testcases/features/doctor.py b/testcases/features/doctor.py index 02edd25c..71393134 100755 --- a/testcases/features/doctor.py +++ b/testcases/features/doctor.py @@ -41,7 +41,7 @@ def main(): cmd = 'cd %s/tests && ./run.sh' % DOCTOR_REPO start_time = time.time() - ret = functest_utils.execute_command(cmd, logger, info=True, + ret = functest_utils.execute_command(cmd, info=True, exit_on_error=False) stop_time = time.time() @@ -62,13 +62,12 @@ def main(): status = "FAIL" if details['status'] == "OK": status = "PASS" - functest_utils.logger_test_results(logger, "Doctor", + functest_utils.logger_test_results("Doctor", "doctor-notification", status, details) if args.report: functest_utils.push_results_to_db("doctor", "doctor-notification", - logger, start_time, stop_time, status, diff --git a/testcases/features/domino.py b/testcases/features/domino.py index 291a3b49..f99a53b6 100755 --- a/testcases/features/domino.py +++ b/testcases/features/domino.py @@ -42,7 +42,7 @@ def main(): cmd = 'cd %s && ./tests/run_multinode.sh' % DOMINO_REPO start_time = time.time() - ret = functest_utils.execute_command(cmd, logger, exit_on_error=False) + ret = functest_utils.execute_command(cmd, exit_on_error=False) stop_time = time.time() duration = round(stop_time - start_time, 1) @@ -68,14 +68,13 @@ def main(): elif details['status'] == "SKIPPED": status = "SKIP" - functest_utils.logger_test_results(logger, "Domino", + functest_utils.logger_test_results("Domino", "domino-multinode", status, details) if args.report: if status is not "SKIP": functest_utils.push_results_to_db("domino", "domino-multinode", - logger, start_time, stop_time, status, diff --git a/testcases/features/promise.py b/testcases/features/promise.py index 3728adfe..27186550 100755 --- a/testcases/features/promise.py +++ b/testcases/features/promise.py @@ -245,7 +245,6 @@ def main(): functest_utils.push_results_to_db("promise", "promise", - logger, start_time, stop_time, status, diff --git a/testcases/features/sfc/sfc.py b/testcases/features/sfc/sfc.py index 3cf1052b..4f08d23d 100755 --- a/testcases/features/sfc/sfc.py +++ b/testcases/features/sfc/sfc.py @@ -260,15 +260,16 @@ def main(): try: while 1: - (stdin, stdout, stderr) = ssh.exec_command("ps lax | grep python") - if "vxlan_tool.py" in stdout.readlines()[0]: + (stdin, stdout, stderr) = ssh.exec_command( + "ps aux | grep \"vxlan_tool.py\" | grep -v grep") + if len(stdout.readlines()) > 0: logger.debug("HTTP firewall started") break else: logger.debug("HTTP firewall not started") time.sleep(3) - except: - logger.error("vxlan_tool not started in SF1") + except Exception: + logger.exception("vxlan_tool not started in SF1") # SSH TO START THE VXLAN_TOOL ON SF2 try: @@ -284,15 +285,16 @@ def main(): try: while 1: - (stdin, stdout, stderr) = ssh.exec_command("ps lax | grep python") - if "vxlan_tool.py" in stdout.readlines()[0]: + (stdin, stdout, stderr) = ssh.exec_command( + "ps aux | grep \"vxlan_tool.py\" | grep -v grep") + if len(stdout.readlines()) > 0: logger.debug("SSH firewall started") break else: logger.debug("SSH firewall not started") time.sleep(3) - except: - logger.error("vxlan_tool not started in SF2") + except Exception: + logger.exception("vxlan_tool not started in SF2") # SSH to modify the classification flows in compute @@ -303,51 +305,55 @@ def main(): shell=True, stdout=subprocess.PIPE) - # SSH TO EXECUTE cmd_client + logger.info("Waiting for 60 seconds before TEST") + for j in range(0, 6): + logger.info("Test starting in {0} seconds".format(str((6 - j)*10))) + time.sleep(10) + i = 0 + + # SSH TO EXECUTE cmd_client logger.info("TEST STARTED") try: ssh.connect(floatip_client, username="root", password="opnfv", timeout=2) command = "nc -w 5 -zv " + instance_ip_2 + " 22 2>&1" (stdin, stdout, stderr) = ssh.exec_command(command) + + # WRITE THE CORRECT WAY TO DO LOGGING + if "timed out" in stdout.readlines()[0]: + logger.info('\033[92m' + "TEST 1 [PASSED] " + "==> SSH BLOCKED" + '\033[0m') + i = i + 1 + else: + logger.error('\033[91m' + "TEST 1 [FAILED] " + "==> SSH NOT BLOCKED" + '\033[0m') + return except: logger.debug("Waiting for %s..." % floatip_client) time.sleep(6) # timeout -= 1 - # WRITE THE CORRECT WAY TO DO LOGGING - i = 0 - if "timed out" in stdout.readlines()[0]: - logger.info('\033[92m' + "TEST 1 [PASSED] " - "==> SSH BLOCKED" + '\033[0m') - i = i + 1 - else: - logger.error('\033[91m' + "TEST 1 [FAILED] " - "==> SSH NOT BLOCKED" + '\033[0m') - return - # SSH TO EXECUTE cmd_client - try: ssh.connect(floatip_client, username="root", password="opnfv", timeout=2) command = "nc -w 5 -zv " + instance_ip_2 + " 80 2>&1" (stdin, stdout, stderr) = ssh.exec_command(command) + + if "succeeded" in stdout.readlines()[0]: + logger.info('\033[92m' + "TEST 2 [PASSED] " + "==> HTTP WORKS" + '\033[0m') + i = i + 1 + else: + logger.error('\033[91m' + "TEST 2 [FAILED] " + "==> HTTP BLOCKED" + '\033[0m') + return except: logger.debug("Waiting for %s..." % floatip_client) time.sleep(6) # timeout -= 1 - if "succeeded" in stdout.readlines()[0]: - logger.info('\033[92m' + "TEST 2 [PASSED] " - "==> HTTP WORKS" + '\033[0m') - i = i + 1 - else: - logger.error('\033[91m' + "TEST 2 [FAILED] " - "==> HTTP BLOCKED" + '\033[0m') - return - # CHANGE OF CLASSIFICATION # logger.info("Changing the classification") tacker_classi = "/home/opnfv/repos/functest/testcases/features/sfc/" + \ @@ -373,48 +379,47 @@ def main(): password="opnfv", timeout=2) command = "nc -w 5 -zv " + instance_ip_2 + " 80 2>&1" (stdin, stdout, stderr) = ssh.exec_command(command) + + if "timed out" in stdout.readlines()[0]: + logger.info('\033[92m' + "TEST 3 [WORKS] " + "==> HTTP BLOCKED" + '\033[0m') + i = i + 1 + else: + logger.error('\033[91m' + "TEST 3 [FAILED] " + "==> HTTP NOT BLOCKED" + '\033[0m') + return except: logger.debug("Waiting for %s..." % floatip_client) time.sleep(6) # timeout -= 1 - if "timed out" in stdout.readlines()[0]: - logger.info('\033[92m' + "TEST 3 [WORKS] " - "==> HTTP BLOCKED" + '\033[0m') - i = i + 1 - else: - logger.error('\033[91m' + "TEST 3 [FAILED] " - "==> HTTP NOT BLOCKED" + '\033[0m') - return - # SSH TO EXECUTE cmd_client - try: ssh.connect(floatip_client, username="root", password="opnfv", timeout=2) command = "nc -w 5 -zv " + instance_ip_2 + " 22 2>&1" (stdin, stdout, stderr) = ssh.exec_command(command) + + if "succeeded" in stdout.readlines()[0]: + logger.info('\033[92m' + "TEST 4 [WORKS] " + "==> SSH WORKS" + '\033[0m') + i = i + 1 + else: + logger.error('\033[91m' + "TEST 4 [FAILED] " + "==> SSH BLOCKED" + '\033[0m') + return except: logger.debug("Waiting for %s..." % floatip_client) time.sleep(6) # timeout -= 1 - if "succeeded" in stdout.readlines()[0]: - logger.info('\033[92m' + "TEST 4 [WORKS] " - "==> SSH WORKS" + '\033[0m') - i = i + 1 - else: - logger.error('\033[91m' + "TEST 4 [FAILED] " - "==> SSH BLOCKED" + '\033[0m') - return - if i == 4: for x in range(0, 5): logger.info('\033[92m' + "SFC TEST WORKED" " :) \n" + '\033[0m') # TODO report results to DB - # functest_utils.logger_test_results(logger, "SFC", + # functest_utils.logger_test_results("SFC", # "odl-sfc", # status, details) # see doctor, promise, domino, ... @@ -422,7 +427,6 @@ def main(): # logger.info("Pushing odl-SFC results") # functest_utils.push_results_to_db("functest", # "odl-sfc", - # logger, # start_time, # stop_time, # status, diff --git a/testcases/vnf/vIMS/vIMS.py b/testcases/vnf/vIMS/vIMS.py index 66911c1d..bf534f68 100755 --- a/testcases/vnf/vIMS/vIMS.py +++ b/testcases/vnf/vIMS/vIMS.py @@ -122,7 +122,6 @@ def step_failure(step_name, error_msg): status = "PASS" functest_utils.push_results_to_db("functest", "vims", - None, TESTCASE_START_TIME, stop_time, status, @@ -244,7 +243,6 @@ def test_clearwater(): functest_utils.push_results_to_db("functest", "vims", - logger, TESTCASE_START_TIME, end_time_ts, status, @@ -407,10 +405,10 @@ def main(): logger.info("Prepare virtualenv for cloudify-cli") cmd = "chmod +x " + VIMS_DIR + "create_venv.sh" - functest_utils.execute_command(cmd, logger) + functest_utils.execute_command(cmd) time.sleep(3) cmd = VIMS_DIR + "create_venv.sh " + VIMS_DATA_DIR - functest_utils.execute_command(cmd, logger) + functest_utils.execute_command(cmd) cfy.download_manager_blueprint( CFY_MANAGER_BLUEPRINT['url'], CFY_MANAGER_BLUEPRINT['branch']) diff --git a/testcases/vnf/vRNC/parser.py b/testcases/vnf/vRNC/parser.py index 00593b0b..a895ef8d 100755 --- a/testcases/vnf/vRNC/parser.py +++ b/testcases/vnf/vRNC/parser.py @@ -44,7 +44,6 @@ def main(): start_time = time.time() ret = functest_utils.execute_command(cmd, - logger, info=True, exit_on_error=False) stop_time = time.time() @@ -54,8 +53,7 @@ def main(): start_time, stop_time) - functest_utils.logger_test_results(logger, - project, + functest_utils.logger_test_results(project, case_name, status, details) @@ -64,7 +62,6 @@ def main(): logger.debug("Report Parser Results to DB......") functest_utils.push_results_to_db(project, case_name, - logger, start_time, stop_time, status, diff --git a/utils/functest_utils.py b/utils/functest_utils.py index b8bd403a..1f86bcd0 100644 --- a/utils/functest_utils.py +++ b/utils/functest_utils.py @@ -77,33 +77,33 @@ def get_git_branch(repo_path): return branch.name -def get_installer_type(logger=None): +def get_installer_type(): """ Get installer type (fuel, apex, joid, compass) """ try: installer = os.environ['INSTALLER_TYPE'] except KeyError: - globals()['logger'].error("Impossible to retrieve the installer type") + logger.error("Impossible to retrieve the installer type") installer = "Unknown_installer" return installer -def get_scenario(logger=None): +def get_scenario(): """ Get scenario """ try: scenario = os.environ['DEPLOY_SCENARIO'] except KeyError: - globals()['logger'].error("Impossible to retrieve the scenario") + logger.error("Impossible to retrieve the scenario") scenario = "Unknown_scenario" return scenario -def get_version(logger=None): +def get_version(): """ Get version """ @@ -114,7 +114,7 @@ def get_version(logger=None): # e.g. jenkins-functest-fuel-opnfv-jump-2-daily-master-190 # use regex to match branch info rule = "daily-(.+?)-[0-9]*" - build_tag = get_build_tag(logger) + build_tag = get_build_tag() m = re.search(rule, build_tag) if m: return m.group(1) @@ -122,33 +122,33 @@ def get_version(logger=None): return "unknown" -def get_pod_name(logger=None): +def get_pod_name(): """ Get PoD Name from env variable NODE_NAME """ try: return os.environ['NODE_NAME'] except KeyError: - globals()['logger'].error( + logger.error( "Unable to retrieve the POD name from environment. " + "Using pod name 'unknown-pod'") return "unknown-pod" -def get_build_tag(logger=None): +def get_build_tag(): """ Get build tag of jenkins jobs """ try: build_tag = os.environ['BUILD_TAG'] except KeyError: - globals()['logger'].error("Impossible to retrieve the build tag") + logger.error("Impossible to retrieve the build tag") build_tag = "unknown_build_tag" return build_tag -def get_db_url(logger=None): +def get_db_url(): """ Returns DB URL """ @@ -159,13 +159,13 @@ def get_db_url(logger=None): return db_url -def logger_test_results(logger, project, case_name, status, details): - pod_name = get_pod_name(logger) - scenario = get_scenario(logger) - version = get_version(logger) - build_tag = get_build_tag(logger) +def logger_test_results(project, case_name, status, details): + pod_name = get_pod_name() + scenario = get_scenario() + version = get_version() + build_tag = get_build_tag() - globals()['logger'].info( + logger.info( "\n" "****************************************\n" "\t %(p)s/%(n)s results \n\n" @@ -188,13 +188,13 @@ def logger_test_results(logger, project, case_name, status, details): 'd': details}) -def push_results_to_db(project, case_name, logger, +def push_results_to_db(project, case_name, start_date, stop_date, criteria, details): """ POST results to the Result target DB """ # Retrieve params from CI and conf - url = get_db_url(logger) + "/results" + url = get_db_url() + "/results" try: installer = os.environ['INSTALLER_TYPE'] @@ -202,14 +202,14 @@ def push_results_to_db(project, case_name, logger, pod_name = os.environ['NODE_NAME'] build_tag = os.environ['BUILD_TAG'] except KeyError as e: - globals()['logger'].error("Please set env var: " + str(e)) + logger.error("Please set env var: " + str(e)) return False rule = "daily-(.+?)-[0-9]*" m = re.search(rule, build_tag) if m: version = m.group(1) else: - globals()['logger'].error("Please fix BUILD_TAG env var: " + build_tag) + logger.error("Please fix BUILD_TAG env var: " + build_tag) return False test_start = dt.fromtimestamp(start_date).strftime('%Y-%m-%d %H:%M:%S') test_stop = dt.fromtimestamp(stop_date).strftime('%Y-%m-%d %H:%M:%S') @@ -224,7 +224,7 @@ def push_results_to_db(project, case_name, logger, headers = {'Content-Type': 'application/json'} try: r = requests.post(url, data=json.dumps(params), headers=headers) - globals()['logger'].debug(r) + logger.debug(r) r.raise_for_status() except requests.RequestException as exc: if 'r' in locals(): @@ -258,7 +258,7 @@ def push_results_to_db(project, case_name, logger, }) finally: if error: - globals()['logger'].error(error) + logger.error(error) return False return True @@ -295,19 +295,16 @@ def get_ci_envvars(): return ci_env_var -def execute_command(cmd, logger=None, - exit_on_error=True, - info=False, - error_msg="", +def execute_command(cmd, exit_on_error=True, info=False, error_msg="", verbose=True): if not error_msg: error_msg = ("The command '%s' failed." % cmd) msg_exec = ("Executing command: '%s'" % cmd) if verbose: if info: - globals()['logger'].info(msg_exec) + logger.info(msg_exec) else: - globals()['logger'].debug(msg_exec) + logger.debug(msg_exec) p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) for line in iter(p.stdout.readline, b''): @@ -318,14 +315,14 @@ def execute_command(cmd, logger=None, returncode = p.wait() if returncode != 0: if verbose: - globals()['logger'].error(error_msg) + logger.error(error_msg) if exit_on_error: sys.exit(1) return returncode -def get_deployment_dir(logger=None): +def get_deployment_dir(): """ Returns current Rally deployment directory """ @@ -342,7 +339,7 @@ def get_deployment_dir(logger=None): stderr=subprocess.STDOUT) deployment_uuid = p.stdout.readline().rstrip() if deployment_uuid == "": - globals()['logger'].error("Rally deployment not found.") + logger.error("Rally deployment not found.") exit(-1) deployment_dir = (rally_dir + "/tempest/for-deployment-" + deployment_uuid) |