def __init__(self, config_file): self.CONFIG_FILE = config_file if not os.path.exists(self.CONFIG_FILE): STREAM.critical( "Config Error: Configuration file not found!\nSolutions:\n\t - Specify your configuration file by adding '-c <path>' key\n\t - Generate default configuration file by adding '-g' key\nExitting..." ) sys.exit()
def check_keyword(keyword_name): try: STREAM.debug(" -> Check for keyword:") keyword = importlib.import_module("vmaker.keywords.%s" % keyword_name) STREAM.debug(" %s" % keyword) STREAM.debug(" -> Check for a class <Keyword>:") cls = getattr(keyword, "Keyword") STREAM.debug(" %s" % cls) STREAM.debug(" -> Check for entrypoint <main>:") entry = getattr(cls, "main") STREAM.debug(" %s" % entry) STREAM.debug(" -> Check for REQUIRED_CONFIG_ATTRS:") entry = getattr(cls, "REQUIRED_CONFIG_ATTRS") STREAM.debug(" %s" % entry) STREAM.success(_aligner(" -> Checking and loading keyword <%s>" % keyword_name, "OK")) except ImportError as err: STREAM.warning(_aligner(" -> Checking and loading keyword <%s>" % keyword_name, "FAILED")) STREAM.critical(" -> %s" % err) sys.exit() except AttributeError as err: STREAM.warning(_aligner(" -> Checking and loading keyword <%s>" % keyword_name, "FAILED")) STREAM.critical(" -> %s" % err) sys.exit() finally: sleep(0.1)