diff options
Diffstat (limited to 'testcases/VIM/OpenStack/CI/libraries/run_tempest.py')
-rw-r--r-- | testcases/VIM/OpenStack/CI/libraries/run_tempest.py | 78 |
1 files changed, 33 insertions, 45 deletions
diff --git a/testcases/VIM/OpenStack/CI/libraries/run_tempest.py b/testcases/VIM/OpenStack/CI/libraries/run_tempest.py index b2240c9c2..d8c477b37 100644 --- a/testcases/VIM/OpenStack/CI/libraries/run_tempest.py +++ b/testcases/VIM/OpenStack/CI/libraries/run_tempest.py @@ -23,6 +23,7 @@ import shutil import subprocess import time import yaml +import ConfigParser import keystoneclient.v2_0.client as ksclient from neutronclient.v2_0 import client as neutronclient @@ -78,25 +79,22 @@ f.close() TEST_DB = functest_yaml.get("results").get("test_db_url") MODE = "smoke" -TENANT_NAME = functest_yaml.get("tempest").\ - get("identity").get("tenant_name") -TENANT_DESCRIPTION = functest_yaml.get("tempest").\ - get("identity").get("tenant_description") -USER_NAME = functest_yaml.get("tempest").\ - get("identity").get("user_name") -USER_PASSWORD = functest_yaml.get("tempest").\ - get("identity").get("user_password") -SSH_USER_REGEX = functest_yaml.get("tempest").\ - get("input-scenario").get("ssh_user_regex") -DEPLOYMENT_MAME = functest_yaml.get("rally").\ - get("deployment_name") -RALLY_INSTALLATION_DIR = functest_yaml.get("general").\ - get("directories").get("dir_rally_inst") -RESULTS_DIR = functest_yaml.get("general").\ - get("directories").get("dir_results") +TENANT_NAME = functest_yaml.get("tempest").get("identity").get("tenant_name") +TENANT_DESCRIPTION = functest_yaml.get("tempest").get("identity").get( + "tenant_description") +USER_NAME = functest_yaml.get("tempest").get("identity").get("user_name") +USER_PASSWORD = functest_yaml.get("tempest").get("identity").get( + "user_password") +SSH_USER_REGEX = functest_yaml.get("tempest").get("input-scenario").get( + "ssh_user_regex") +DEPLOYMENT_MAME = functest_yaml.get("rally").get("deployment_name") +RALLY_INSTALLATION_DIR = functest_yaml.get("general").get("directories").get( + "dir_rally_inst") +RESULTS_DIR = functest_yaml.get("general").get("directories").get( + "dir_results") TEMPEST_RESULTS_DIR = RESULTS_DIR + '/tempest' -TEST_LIST_DIR = functest_yaml.get("general").\ - get("directories").get("dir_tempest_cases") +TEST_LIST_DIR = functest_yaml.get("general").get("directories").get( + "dir_tempest_cases") TEMPEST_LIST_FILE = REPO_PATH + TEST_LIST_DIR + 'test_list.txt' TEMPEST_DEFCORE = REPO_PATH + TEST_LIST_DIR + 'defcore_req.txt' @@ -198,8 +196,8 @@ def configure_tempest(mode): if deployment_uuid == "": logger.debug(" Rally deployment NOT found") return False - deployment_dir = RALLY_INSTALLATION_DIR + "/tempest/for-deployment-" + \ - deployment_uuid + deployment_dir = (RALLY_INSTALLATION_DIR + "/tempest/for-deployment-" + + deployment_uuid) logger.debug("Finding tempest.conf file...") tempest_conf_file = deployment_dir + "/tempest.conf" @@ -217,7 +215,9 @@ def configure_tempest(mode): cmd += "testr list-tests >" + TEMPEST_LIST_FILE + ";cd" functest_utils.execute_command(cmd, logger) - logger.debug(" Updating fixed_network_name...") + logger.debug("Updating selected tempest.conf parameters...") + config = ConfigParser.RawConfigParser() + config.read(tempest_conf_file) private_net_name = "" creds_neutron = openstack_utils.get_credentials("neutron") neutron_client = neutronclient.Client(**creds_neutron) @@ -226,24 +226,12 @@ def configure_tempest(mode): logger.error("No shared private networks found.") else: private_net_name = private_net['name'] - cmd = "crudini --set " + tempest_conf_file + \ - " compute fixed_network_name " + \ - private_net_name - functest_utils.execute_command(cmd, logger) - - logger.debug(" Updating non-admin credentials...") - cmd = "crudini --set " + tempest_conf_file + " identity tenant_name " \ - + TENANT_NAME - functest_utils.execute_command(cmd, logger) - cmd = "crudini --set " + tempest_conf_file + " identity username " \ - + USER_NAME - functest_utils.execute_command(cmd, logger) - cmd = "crudini --set " + tempest_conf_file + " identity password " \ - + USER_PASSWORD - functest_utils.execute_command(cmd, logger) - cmd = "sed -i 's/.*ssh_user_regex.*/ssh_user_regex = " + SSH_USER_REGEX + \ - "/' " + tempest_conf_file - functest_utils.execute_command(cmd, logger) + config.set('compute', 'fixed_network_name', private_net_name) + config.set('identity', 'tenant_name', TENANT_NAME) + config.set('identity', 'username', USER_NAME) + config.set('identity', 'password', USER_PASSWORD) + with open(tempest_conf_file, 'wb') as config_file: + config.write(config_file) # Copy tempest.conf to /home/opnfv/functest/results/tempest/ shutil.copyfile(tempest_conf_file, TEMPEST_RESULTS_DIR + '/tempest.conf') @@ -264,12 +252,12 @@ def run_tempest(OPTION): if CI_DEBUG == "true" or CI_DEBUG == "True": subprocess.call(cmd_line, shell=True, stderr=subprocess.STDOUT) else: - header = "Tempest environment:\n"\ - " Installer: %s\n Scenario: %s\n Node: %s\n Date: %s\n" % \ - (os.getenv('INSTALLER_TYPE', 'Unknown'), - os.getenv('DEPLOY_SCENARIO', 'Unknown'), - os.getenv('NODE_NAME', 'Unknown'), - time.strftime("%a %b %d %H:%M:%S %Z %Y")) + header = ("Tempest environment:\n" + " Installer: %s\n Scenario: %s\n Node: %s\n Date: %s\n" % + (os.getenv('INSTALLER_TYPE', 'Unknown'), + os.getenv('DEPLOY_SCENARIO', 'Unknown'), + os.getenv('NODE_NAME', 'Unknown'), + time.strftime("%a %b %d %H:%M:%S %Z %Y"))) f_stdout = open(TEMPEST_RESULTS_DIR + "/tempest.log", 'w+') f_stderr = open(TEMPEST_RESULTS_DIR + "/tempest-error.log", 'w+') |