diff options
Diffstat (limited to 'testcases')
-rwxr-xr-x | testcases/OpenStack/rally/run_rally-cert.py | 9 | ||||
-rwxr-xr-x | testcases/OpenStack/tempest/run_tempest.py | 4 | ||||
-rw-r--r-- | testcases/OpenStack/vPing/vping_util.py | 7 | ||||
-rwxr-xr-x | testcases/features/copper.py | 8 | ||||
-rwxr-xr-x | testcases/features/doctor.py | 7 | ||||
-rwxr-xr-x | testcases/features/domino.py | 7 | ||||
-rwxr-xr-x | testcases/features/promise.py | 9 | ||||
-rw-r--r-- | testcases/vnf/vIMS/orchestrator.py | 103 | ||||
-rwxr-xr-x | testcases/vnf/vIMS/vIMS.py | 19 | ||||
-rwxr-xr-x | testcases/vnf/vRNC/parser.py | 7 |
10 files changed, 69 insertions, 111 deletions
diff --git a/testcases/OpenStack/rally/run_rally-cert.py b/testcases/OpenStack/rally/run_rally-cert.py index f3eb79d26..43096c19e 100755 --- a/testcases/OpenStack/rally/run_rally-cert.py +++ b/testcases/OpenStack/rally/run_rally-cert.py @@ -15,18 +15,17 @@ # """ tests configuration """ -import argparse import json import os import re import subprocess import time + +import argparse import functest.utils.functest_logger as ft_logger import functest.utils.functest_utils as functest_utils import functest.utils.openstack_utils as os_utils import iniparse -import yaml - tests = ['authenticate', 'glance', 'cinder', 'heat', 'keystone', 'neutron', 'nova', 'quotas', 'requests', 'vm', 'all'] @@ -76,9 +75,7 @@ if not os.path.exists(REPO_PATH): exit(-1) -with open(os.environ["CONFIG_FUNCTEST_YAML"]) as f: - functest_yaml = yaml.safe_load(f) -f.close() +functest_yaml = functest_utils.get_functest_yaml() HOME = os.environ['HOME'] + "/" RALLY_DIR = REPO_PATH + functest_yaml.get("general").get( diff --git a/testcases/OpenStack/tempest/run_tempest.py b/testcases/OpenStack/tempest/run_tempest.py index 306664feb..fbb65dbb7 100755 --- a/testcases/OpenStack/tempest/run_tempest.py +++ b/testcases/OpenStack/tempest/run_tempest.py @@ -60,9 +60,7 @@ logger = ft_logger.Logger("run_tempest").getLogger() REPO_PATH = os.environ['repos_dir'] + '/functest/' -with open(os.environ["CONFIG_FUNCTEST_YAML"]) as f: - functest_yaml = yaml.safe_load(f) -f.close() +functest_yaml = ft_utils.get_functest_yaml() TEST_DB = functest_yaml.get("results").get("test_db_url") MODE = "smoke" diff --git a/testcases/OpenStack/vPing/vping_util.py b/testcases/OpenStack/vPing/vping_util.py index 3f4adae73..8e9ce23ec 100644 --- a/testcases/OpenStack/vPing/vping_util.py +++ b/testcases/OpenStack/vPing/vping_util.py @@ -1,6 +1,6 @@ import os -import re import pprint +import re import sys import time @@ -8,13 +8,10 @@ import functest.utils.functest_utils as ft_utils import functest.utils.openstack_utils as os_utils import paramiko from scp import SCPClient -import yaml REPO_PATH = os.environ['repos_dir'] + '/functest/' -with open(os.environ["CONFIG_FUNCTEST_YAML"]) as f: - functest_yaml = yaml.safe_load(f) -f.close() +functest_yaml = ft_utils.get_functest_yaml() NAME_VM_1 = functest_yaml.get("vping").get("vm_name_1") NAME_VM_2 = functest_yaml.get("vping").get("vm_name_2") diff --git a/testcases/features/copper.py b/testcases/features/copper.py index c79754a1b..73def7db2 100755 --- a/testcases/features/copper.py +++ b/testcases/features/copper.py @@ -14,13 +14,12 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import argparse -import os import sys import time + +import argparse import functest.utils.functest_logger as ft_logger import functest.utils.functest_utils as functest_utils -import yaml parser = argparse.ArgumentParser() parser.add_argument("-r", "--report", @@ -28,8 +27,7 @@ parser.add_argument("-r", "--report", action="store_true") args = parser.parse_args() -with open(os.environ["CONFIG_FUNCTEST_YAML"]) as f: - functest_yaml = yaml.safe_load(f) +functest_yaml = functest_utils.get_functest_yaml() dirs = functest_yaml.get('general').get('directories') COPPER_REPO = dirs.get('dir_repo_copper') diff --git a/testcases/features/doctor.py b/testcases/features/doctor.py index 02edd25ca..6e6f26f37 100755 --- a/testcases/features/doctor.py +++ b/testcases/features/doctor.py @@ -13,11 +13,9 @@ # 0.2: measure test duration and publish results under json format # # -import argparse -import os import time -import yaml +import argparse import functest.utils.functest_logger as ft_logger import functest.utils.functest_utils as functest_utils @@ -27,8 +25,7 @@ parser.add_argument("-r", "--report", action="store_true") args = parser.parse_args() -with open(os.environ["CONFIG_FUNCTEST_YAML"]) as f: - functest_yaml = yaml.safe_load(f) +functest_yaml = functest_utils.get_functest_yaml() dirs = functest_yaml.get('general').get('directories') DOCTOR_REPO = dirs.get('dir_repo_doctor') diff --git a/testcases/features/domino.py b/testcases/features/domino.py index 291a3b49b..cc98f546d 100755 --- a/testcases/features/domino.py +++ b/testcases/features/domino.py @@ -14,11 +14,9 @@ # 0.3: add report flag to push results when needed # -import argparse -import os import time -import yaml +import argparse import functest.utils.functest_logger as ft_logger import functest.utils.functest_utils as functest_utils @@ -29,8 +27,7 @@ parser.add_argument("-r", "--report", action="store_true") args = parser.parse_args() -with open(os.environ["CONFIG_FUNCTEST_YAML"]) as f: - functest_yaml = yaml.safe_load(f) +functest_yaml = functest_utils.get_functest_yaml() dirs = functest_yaml.get('general').get('directories') DOMINO_REPO = dirs.get('dir_repo_domino') diff --git a/testcases/features/promise.py b/testcases/features/promise.py index 3728adfe5..3f58dcee8 100755 --- a/testcases/features/promise.py +++ b/testcases/features/promise.py @@ -9,20 +9,18 @@ # # Maintainer : jose.lausuch@ericsson.com # -import argparse import json import os import subprocess import time +import argparse import functest.utils.functest_logger as ft_logger import functest.utils.functest_utils as functest_utils import functest.utils.openstack_utils as openstack_utils import keystoneclient.v2_0.client as ksclient -from neutronclient.v2_0 import client as ntclient import novaclient.client as nvclient -import yaml - +from neutronclient.v2_0 import client as ntclient parser = argparse.ArgumentParser() @@ -32,8 +30,7 @@ parser.add_argument("-r", "--report", action="store_true") args = parser.parse_args() -with open(os.environ["CONFIG_FUNCTEST_YAML"]) as f: - functest_yaml = yaml.safe_load(f) +functest_yaml = functest_utils.get_functest_yaml() dirs = functest_yaml.get('general').get('directories') PROMISE_REPO = dirs.get('dir_repo_promise') diff --git a/testcases/vnf/vIMS/orchestrator.py b/testcases/vnf/vIMS/orchestrator.py index 3da3fb063..61157a4fb 100644 --- a/testcases/vnf/vIMS/orchestrator.py +++ b/testcases/vnf/vIMS/orchestrator.py @@ -10,22 +10,26 @@ # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ######################################################################## -import subprocess32 as subprocess + import os import shutil +import subprocess32 as subprocess import yaml + from git import Repo +import functest.utils.functest_logger as ft_logger + class orchestrator: - def __init__(self, testcase_dir, inputs={}, logger=None): + def __init__(self, testcase_dir, inputs={}): self.testcase_dir = testcase_dir self.blueprint_dir = testcase_dir + 'cloudify-manager-blueprint/' self.input_file = 'inputs.yaml' self.manager_blueprint = False self.config = inputs - self.logger = logger + self.logger = ft_logger.Logger("Orchestrator").getLogger() self.manager_up = False def set_credentials(self, username, password, tenant_name, auth_url): @@ -56,28 +60,22 @@ class orchestrator: if 0 < len(nameservers): self.config['dns_subnet_1'] = nameservers[0] - def set_logger(self, logger): - self.logger = logger - def download_manager_blueprint(self, manager_blueprint_url, manager_blueprint_branch): if self.manager_blueprint: - if self.logger: - self.logger.info( - "cloudify manager server blueprint is " - "already downloaded !") + self.logger.info( + "cloudify manager server blueprint is " + "already downloaded !") else: - if self.logger: - self.logger.info( - "Downloading the cloudify manager server blueprint") - download_result = download_blueprints( + self.logger.info( + "Downloading the cloudify manager server blueprint") + download_result = self._download_blueprints( manager_blueprint_url, manager_blueprint_branch, self.blueprint_dir) if not download_result: - if self.logger: - self.logger.error("Failed to download manager blueprint") + self.logger.error("Failed to download manager blueprint") exit(-1) else: self.manager_blueprint = True @@ -87,8 +85,7 @@ class orchestrator: def deploy_manager(self): if self.manager_blueprint: - if self.logger: - self.logger.info("Writing the inputs file") + self.logger.info("Writing the inputs file") with open(self.blueprint_dir + "inputs.yaml", "w") as f: f.write(yaml.dump(self.config, default_style='"')) f.close() @@ -102,8 +99,7 @@ class orchestrator: if os.path.isfile(home + key_file): os.remove(home + key_file) - if self.logger: - self.logger.info("Launching the cloudify-manager deployment") + self.logger.info("Launching the cloudify-manager deployment") script = "set -e; " script += ("source " + self.testcase_dir + "venv_cloudify/bin/activate; ") @@ -120,14 +116,12 @@ class orchestrator: if error: return error - if self.logger: - self.logger.info("Cloudify-manager server is UP !") + self.logger.info("Cloudify-manager server is UP !") self.manager_up = True def undeploy_manager(self): - if self.logger: - self.logger.info("Launching the cloudify-manager undeployment") + self.logger.info("Launching the cloudify-manager undeployment") self.manager_up = False @@ -137,38 +131,33 @@ class orchestrator: cmd = "/bin/bash -c '" + script + "'" execute_command(cmd, self.logger) - if self.logger: - self.logger.info( - "Cloudify-manager server has been successfully removed!") + self.logger.info( + "Cloudify-manager server has been successfully removed!") def download_upload_and_deploy_blueprint(self, blueprint, config, bp_name, dep_name): - if self.logger: - self.logger.info("Downloading the {0} blueprint".format( - blueprint['file_name'])) - download_result = download_blueprints(blueprint['url'], - blueprint['branch'], - self.testcase_dir + - blueprint['destination_folder']) + self.logger.info("Downloading the {0} blueprint".format( + blueprint['file_name'])) + destination_folder = self.testcase_dir + \ + blueprint['destination_folder'] + download_result = self._download_blueprints(blueprint['url'], + blueprint['branch'], + destination_folder) if not download_result: - if self.logger: - self.logger.error( - "Failed to download blueprint {0}". - format(blueprint['file_name'])) + self.logger.error( + "Failed to download blueprint {0}". + format(blueprint['file_name'])) exit(-1) - if self.logger: - self.logger.info("Writing the inputs file") + self.logger.info("Writing the inputs file") with open(self.testcase_dir + blueprint['destination_folder'] + "/inputs.yaml", "w") as f: f.write(yaml.dump(config, default_style='"')) - f.close() - if self.logger: - self.logger.info("Launching the {0} deployment".format(bp_name)) + self.logger.info("Launching the {0} deployment".format(bp_name)) script = "source " + self.testcase_dir + "venv_cloudify/bin/activate; " script += ("cd " + self.testcase_dir + blueprint['destination_folder'] + "; ") @@ -183,12 +172,10 @@ class orchestrator: error = execute_command(cmd, self.logger, 2000) if error: return error - if self.logger: - self.logger.info("The deployment of {0} is ended".format(dep_name)) + self.logger.info("The deployment of {0} is ended".format(dep_name)) def undeploy_deployment(self, dep_name): - if self.logger: - self.logger.info("Launching the {0} undeployment".format(dep_name)) + self.logger.info("Launching the {0} undeployment".format(dep_name)) script = "source " + self.testcase_dir + "venv_cloudify/bin/activate; " script += "cd " + self.testcase_dir + "; " script += ("cfy executions start -w uninstall -d " + dep_name + @@ -199,8 +186,16 @@ class orchestrator: try: execute_command(cmd, self.logger) except: - if self.logger: - self.logger.error("Clearwater undeployment failed") + self.logger.error("Clearwater undeployment failed") + + def _download_blueprints(self, blueprint_url, branch, dest_path): + if os.path.exists(dest_path): + shutil.rmtree(dest_path) + try: + Repo.clone_from(blueprint_url, dest_path, branch=branch) + return True + except: + return False def execute_command(cmd, logger, timeout=1800): @@ -237,13 +232,3 @@ def execute_command(cmd, logger, timeout=1800): result += lines[len(lines) - 2] result += lines[len(lines) - 1] return result - - -def download_blueprints(blueprint_url, branch, dest_path): - if os.path.exists(dest_path): - shutil.rmtree(dest_path) - try: - Repo.clone_from(blueprint_url, dest_path, branch=branch) - return True - except: - return False diff --git a/testcases/vnf/vIMS/vIMS.py b/testcases/vnf/vIMS/vIMS.py index 373761794..7a96c94e1 100755 --- a/testcases/vnf/vIMS/vIMS.py +++ b/testcases/vnf/vIMS/vIMS.py @@ -11,28 +11,25 @@ # http://www.apache.org/licenses/LICENSE-2.0 ######################################################################## -import argparse import datetime import json import os import pprint -import requests import subprocess import time -import yaml +import argparse +import functest.utils.functest_logger as ft_logger +import functest.utils.functest_utils as functest_utils +import functest.utils.openstack_utils as os_utils import keystoneclient.v2_0.client as ksclient import novaclient.client as nvclient +import requests from neutronclient.v2_0 import client as ntclient from clearwater import clearwater from orchestrator import orchestrator -import functest.utils.functest_logger as ft_logger -import functest.utils.functest_utils as functest_utils -import functest.utils.openstack_utils as os_utils - - pp = pprint.PrettyPrinter(indent=4) @@ -54,9 +51,7 @@ if not os.path.exists(REPO_PATH): logger.error("Functest repository directory not found '%s'" % REPO_PATH) exit(-1) -with open(os.environ["CONFIG_FUNCTEST_YAML"]) as f: - functest_yaml = yaml.safe_load(f) -f.close() +functest_yaml = functest_utils.get_functest_yaml() # Cloudify parameters VIMS_DIR = (REPO_PATH + @@ -348,7 +343,7 @@ def main(): public_auth_url = keystone.service_catalog.url_for( service_type='identity', endpoint_type='publicURL') - cfy = orchestrator(VIMS_DATA_DIR, CFY_INPUTS, logger) + cfy = orchestrator(VIMS_DATA_DIR, CFY_INPUTS) cfy.set_credentials(username=ks_creds['username'], password=ks_creds[ 'password'], tenant_name=ks_creds['tenant_name'], diff --git a/testcases/vnf/vRNC/parser.py b/testcases/vnf/vRNC/parser.py index 00593b0b0..d22ca8ea4 100755 --- a/testcases/vnf/vRNC/parser.py +++ b/testcases/vnf/vRNC/parser.py @@ -14,11 +14,9 @@ # See the License for the specific language governing permissions and # limitations under the License. # -import os import time -import yaml -import argparse +import argparse import functest.utils.functest_logger as ft_logger import functest.utils.functest_utils as functest_utils @@ -28,8 +26,7 @@ parser.add_argument("-r", "--report", action="store_true") args = parser.parse_args() -with open(os.environ["CONFIG_FUNCTEST_YAML"]) as f: - functest_yaml = yaml.safe_load(f) +functest_yaml = functest_utils.get_functest_yaml() dirs = functest_yaml.get('general').get('directories') PARSER_REPO = dirs.get('dir_repo_parser') |