diff options
Diffstat (limited to 'scripts/utils')
-rw-r--r-- | scripts/utils/__init__.py | 0 | ||||
-rw-r--r-- | scripts/utils/dovetail_logger.py | 55 | ||||
-rw-r--r-- | scripts/utils/dovetail_utils.py | 87 |
3 files changed, 0 insertions, 142 deletions
diff --git a/scripts/utils/__init__.py b/scripts/utils/__init__.py deleted file mode 100644 index e69de29b..00000000 --- a/scripts/utils/__init__.py +++ /dev/null diff --git a/scripts/utils/dovetail_logger.py b/scripts/utils/dovetail_logger.py deleted file mode 100644 index 9b20225c..00000000 --- a/scripts/utils/dovetail_logger.py +++ /dev/null @@ -1,55 +0,0 @@ -#!/usr/bin/env python -# -# jose.lausuch@ericsson.com -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Logging levels: -# Level Numeric value -# CRITICAL 50 -# ERROR 40 -# WARNING 30 -# INFO 20 -# DEBUG 10 -# NOTSET 0 -# -# Usage: -# import dovetail_logger as dl -# logger = dl.Logger("script_name").getLogger() -# logger.info("message to be shown with - INFO - ") -# logger.debug("message to be shown with - DEBUG -") - -import logging -import os - -class Logger: - def __init__(self, logger_name): - - CI_DEBUG = os.getenv('CI_DEBUG') - - self.logger = logging.getLogger(logger_name) - self.logger.propagate = 0 - self.logger.setLevel(logging.DEBUG) - - ch = logging.StreamHandler() - formatter = logging.Formatter('%(asctime)s - %(name)s - ' - '%(levelname)s - %(message)s') - ch.setFormatter(formatter) - if CI_DEBUG is not None and CI_DEBUG.lower() == "true": - ch.setLevel(logging.DEBUG) - else: - ch.setLevel(logging.INFO) - self.logger.addHandler(ch) - - if not os.path.exists('/home/opnfv/dovetail/results/'): - os.makedirs('/home/opnfv/dovetail/results/') - hdlr = logging.FileHandler('/home/opnfv/dovetail/results/dovetail.log') - hdlr.setFormatter(formatter) - hdlr.setLevel(logging.DEBUG) - self.logger.addHandler(hdlr) - - def getLogger(self): - return self.logger - diff --git a/scripts/utils/dovetail_utils.py b/scripts/utils/dovetail_utils.py deleted file mode 100644 index 4c671552..00000000 --- a/scripts/utils/dovetail_utils.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/env python -# -# jose.lausuch@ericsson.com -# valentin.boucher@orange.com -# grakiss.wanglei@huawei.com -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -# - -import sys -import subprocess - -def exec_cmd(cmd, logger=None, - 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 logger: - if info: - logger.info(msg_exec) - else: - logger.debug(msg_exec) - else: - print(msg_exec) - p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, - stderr=subprocess.STDOUT) - output = p.communicate() - for line in output[0].strip().split('\n'): - line = line.replace('\n', '') - if logger: - if info: - logger.info(line) - else: - logger.debug(line) - else: - print line - sys.stdout.flush() - - returncode = p.returncode - if returncode != 0: - if verbose: - if logger: - logger.error(error_msg) - else: - print(error_msg) - if exit_on_error: - sys.exit(1) - - return returncode, output[0].strip() - - -#walkthrough the object, yield path and value -from collections import Mapping, Set, Sequence - -# dual python 2/3 compatability, inspired by the "six" library -string_types = (str, unicode) if str is bytes else (str, bytes) -iteritems = lambda mapping: getattr(mapping, 'iteritems', mapping.items)() - -def objwalk(obj, path=(), memo=None): - if memo is None: - memo = set() - iterator = None - if isinstance(obj, Mapping): - iterator = iteritems - elif isinstance(obj, (Sequence, Set)) and not isinstance(obj, string_types): - iterator = enumerate - if iterator: - if id(obj) not in memo: - memo.add(id(obj)) - for path_component, value in iterator(obj): - for result in objwalk(value, path + (path_component,), memo): - yield result - memo.remove(id(obj)) - else: - yield path, obj - -def get_obj_by_path(obj,dst_path): - for path, obj in objwalk(obj): - if path == dst_path: - return obj - |