diff options
author | jose.lausuch <jose.lausuch@ericsson.com> | 2017-01-30 18:04:44 +0100 |
---|---|---|
committer | jose.lausuch <jose.lausuch@ericsson.com> | 2017-01-31 23:34:24 +0100 |
commit | 92e7d8cee4addb8ea66516a2d5fd295500dcb132 (patch) | |
tree | d2ab29440c998e27239b5c8467f0a361909a60c4 /functest/opnfv_tests/openstack/tempest/conf_utils.py | |
parent | 246f256f0345ee4f193c894661eaed87fc0d0008 (diff) |
Extract util functions from tempest.py to conf_utils
These functions are useful for other test cases trying
to run tempest. For example BGPVPN tests cases located
in SDNVPN repo.
Change-Id: I67e671f4e9b0a2d81a3ab0d1957ce144fb1a0432
Signed-off-by: jose.lausuch <jose.lausuch@ericsson.com>
Diffstat (limited to 'functest/opnfv_tests/openstack/tempest/conf_utils.py')
-rw-r--r-- | functest/opnfv_tests/openstack/tempest/conf_utils.py | 74 |
1 files changed, 71 insertions, 3 deletions
diff --git a/functest/opnfv_tests/openstack/tempest/conf_utils.py b/functest/opnfv_tests/openstack/tempest/conf_utils.py index 67b52796..ff450b1a 100644 --- a/functest/opnfv_tests/openstack/tempest/conf_utils.py +++ b/functest/opnfv_tests/openstack/tempest/conf_utils.py @@ -11,10 +11,12 @@ import ConfigParser import os import re import shutil +import subprocess import opnfv.utils.constants as releng_constants from functest.utils.constants import CONST +import functest.utils.functest_logger as ft_logger import functest.utils.functest_utils as ft_utils import functest.utils.openstack_utils as os_utils @@ -39,8 +41,74 @@ TEMPEST_LIST = os.path.join(TEMPEST_RESULTS_DIR, 'test_list.txt') CI_INSTALLER_TYPE = CONST.INSTALLER_TYPE CI_INSTALLER_IP = CONST.INSTALLER_IP +""" logging configuration """ +logger = ft_logger.Logger("Tempest").getLogger() -def configure_tempest(logger, deployment_dir, IMAGE_ID=None, FLAVOR_ID=None): + +def get_verifier_id(): + """ + Returns verifer id for current Tempest + """ + cmd = ("rally verify list-verifiers | awk '/" + + CONST.tempest_deployment_name + + "/ {print $2}'") + p = subprocess.Popen(cmd, shell=True, + stdout=subprocess.PIPE, + stderr=subprocess.STDOUT) + deployment_uuid = p.stdout.readline().rstrip() + if deployment_uuid == "": + logger.error("Tempest verifier not found.") + raise Exception('Error with command:%s' % cmd) + return deployment_uuid + + +def get_verifier_deployment_id(): + """ + Returns deployment id for active Rally deployment + """ + cmd = ("rally deployment list | awk '/" + + CONST.rally_deployment_name + + "/ {print $2}'") + p = subprocess.Popen(cmd, shell=True, + stdout=subprocess.PIPE, + stderr=subprocess.STDOUT) + deployment_uuid = p.stdout.readline().rstrip() + if deployment_uuid == "": + logger.error("Rally deployment not found.") + raise Exception('Error with command:%s' % cmd) + return deployment_uuid + + +def get_verifier_repo_dir(verifier_id): + """ + Returns installed verfier repo directory for Tempest + """ + if not verifier_id: + verifier_id = get_verifier_id() + + return os.path.join(CONST.dir_rally_inst, + 'verification', + 'verifier-{}'.format(verifier_id), + 'repo') + + +def get_verifier_deployment_dir(verifier_id, deployment_id): + """ + Returns Rally deployment directory for current verifier + """ + if not verifier_id: + verifier_id = get_verifier_id() + + if not deployment_id: + deployment_id = get_verifier_deployment_id() + + return os.path.join(CONST.dir_rally_inst, + 'verification', + 'verifier-{}'.format(verifier_id), + 'for-deployment-{}'.format(deployment_id)) + + +def configure_tempest(deployment_dir, IMAGE_ID=None, FLAVOR_ID=None): """ Add/update needed parameters into tempest.conf file generated by Rally """ @@ -108,12 +176,12 @@ def configure_tempest(logger, deployment_dir, IMAGE_ID=None, FLAVOR_ID=None): return releng_constants.EXIT_OK -def configure_tempest_multisite(logger, deployment_dir): +def configure_tempest_multisite(deployment_dir): """ Add/update needed parameters into tempest.conf file generated by Rally """ logger.debug("configure the tempest") - configure_tempest(logger, deployment_dir) + configure_tempest(deployment_dir) logger.debug("Finding tempest.conf file...") tempest_conf_old = os.path.join(deployment_dir, 'tempest.conf') |