diff options
Diffstat (limited to 'utils/functest_utils.py')
-rw-r--r-- | utils/functest_utils.py | 33 |
1 files changed, 29 insertions, 4 deletions
diff --git a/utils/functest_utils.py b/utils/functest_utils.py index 2e7a1223..285f887c 100644 --- a/utils/functest_utils.py +++ b/utils/functest_utils.py @@ -8,23 +8,25 @@ # http://www.apache.org/licenses/LICENSE-2.0 # +""" global variables """ + from datetime import datetime as dt import json import os import os.path import re -import requests import shutil import socket import subprocess import sys import urllib2 -import yaml -from git import Repo + import functest.ci.tier_builder as tb +from git import Repo +import requests +import yaml -""" global variables """ REPOS_DIR = os.getenv('repos_dir') FUNCTEST_REPO = ("%s/functest/" % REPOS_DIR) @@ -300,3 +302,26 @@ def get_criteria_by_test(testname): criteria = test.get_criteria() return criteria + + +# ---------------------------------------------------------- +# +# YAML UTILS +# +# ----------------------------------------------------------- +def get_parameter_from_yaml(parameter): + """ + Returns the value of a given parameter in config_functest.yaml + parameter must be given in string format with dots + Example: general.openstack.image_name + """ + with open(os.environ["CONFIG_FUNCTEST_YAML"]) as f: + functest_yaml = yaml.safe_load(f) + f.close() + value = functest_yaml + for element in parameter.split("."): + value = value.get(element) + if value is None: + raise ValueError("The parameter %s is not defined in" + " config_functest.yaml" % parameter) + return value |