diff options
Diffstat (limited to 'import-layers/yocto-poky/meta/lib/oeqa/utils/__init__.py')
-rw-r--r-- | import-layers/yocto-poky/meta/lib/oeqa/utils/__init__.py | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/import-layers/yocto-poky/meta/lib/oeqa/utils/__init__.py b/import-layers/yocto-poky/meta/lib/oeqa/utils/__init__.py deleted file mode 100644 index d38a32301..000000000 --- a/import-layers/yocto-poky/meta/lib/oeqa/utils/__init__.py +++ /dev/null @@ -1,103 +0,0 @@ -# Enable other layers to have modules in the same named directory -from pkgutil import extend_path -__path__ = extend_path(__path__, __name__) - -# Borrowed from CalledProcessError - -class CommandError(Exception): - def __init__(self, retcode, cmd, output = None): - self.retcode = retcode - self.cmd = cmd - self.output = output - def __str__(self): - return "Command '%s' returned non-zero exit status %d with output: %s" % (self.cmd, self.retcode, self.output) - -def avoid_paths_in_environ(paths): - """ - Searches for every path in os.environ['PATH'] - if found remove it. - - Returns new PATH without avoided PATHs. - """ - import os - - new_path = '' - for p in os.environ['PATH'].split(':'): - avoid = False - for pa in paths: - if pa in p: - avoid = True - break - if avoid: - continue - - new_path = new_path + p + ':' - - new_path = new_path[:-1] - return new_path - -def make_logger_bitbake_compatible(logger): - import logging - - """ - Bitbake logger redifines debug() in order to - set a level within debug, this breaks compatibility - with vainilla logging, so we neeed to redifine debug() - method again also add info() method with INFO + 1 level. - """ - def _bitbake_log_debug(*args, **kwargs): - lvl = logging.DEBUG - - if isinstance(args[0], int): - lvl = args[0] - msg = args[1] - args = args[2:] - else: - msg = args[0] - args = args[1:] - - logger.log(lvl, msg, *args, **kwargs) - - def _bitbake_log_info(msg, *args, **kwargs): - logger.log(logging.INFO + 1, msg, *args, **kwargs) - - logger.debug = _bitbake_log_debug - logger.info = _bitbake_log_info - - return logger - -def load_test_components(logger, executor): - import sys - import os - import importlib - - from oeqa.core.context import OETestContextExecutor - - components = {} - - for path in sys.path: - base_dir = os.path.join(path, 'oeqa') - if os.path.exists(base_dir) and os.path.isdir(base_dir): - for file in os.listdir(base_dir): - comp_name = file - comp_context = os.path.join(base_dir, file, 'context.py') - if os.path.exists(comp_context): - comp_plugin = importlib.import_module('oeqa.%s.%s' % \ - (comp_name, 'context')) - try: - if not issubclass(comp_plugin._executor_class, - OETestContextExecutor): - raise TypeError("Component %s in %s, _executor_class "\ - "isn't derived from OETestContextExecutor."\ - % (comp_name, comp_context)) - - if comp_plugin._executor_class._script_executor \ - != executor: - continue - - components[comp_name] = comp_plugin._executor_class() - except AttributeError: - raise AttributeError("Component %s in %s don't have "\ - "_executor_class defined." % (comp_name, comp_context)) - - return components |