from decouple import config import sys, getopt #import configBuilder from context.Context import Context #from Executer import Executer from rest.RestFactory import RestFactory from environment.YamlEnvReader import YamlEnvReader from ProjectList import ProjectList from tokenStore.EnvTokenStore import EnvTokenStore import coloredlogs, logging from Report.ReportPrinter import ReportPrinter from Report.ConsolePrinter import ConsolePrinter from Options import Options #, ConsolePrinter def printLogo(): print(r""" ___ ___ ________ _____ ______ ________ |\ \ / /|\ __ \|\ _ \ _ \|\ __ \ \ \ \/ / | \ \|\ \ \ \\\__\ \ \ \ \|\ \ \ \ / / \ \ __ \ \ \\|__| \ \ \ \\\ \ \/ / / \ \ \ \ \ \ \ \ \ \ \ \\\ \ __/ / / \ \__\ \__\ \__\ \ \__\ \_______\ |\___/ / \|__|\|__|\|__| \|__|\|_______| \|___|/ """) def printHelp(): printLogo() print("yamo.py -i -p -e -r ") def main(argv): options=Options.getInstance() pathToProjects = '.' try: opts, args = getopt.getopt(argv,"h:i:p:e:r:l:v",["help","iPath","project", "environment", "restcall","logLevel"]) except getopt.GetoptError: printHelp() sys.exit(2) for opt, arg in opts: if opt in ('-h',"--help"): printHelp sys.exit() elif opt in ("-i", "--iPath"): options.pathToProjects = arg elif opt in ("-p", "--project"): options.project=arg elif opt in ("-e", "--environment"): options.env=arg elif opt in ("-r", "--restcall"): options.restCall=arg elif opt in ("-l", "--logLevel"): options.loglevel=arg try: printLogo() logger = logging.getLogger(__name__) coloredlogs.install(level=options.loglevel) #logger.debug("this is a debugging message") tokenStore=EnvTokenStore() #print(tokenStoreX.get('NTTDATA-Api-Token')) pathToRestConfig="restConfig.json" restFactory = RestFactory(pathToRestConfig) pathToEnvironmentFile=options.pathToProjects+"/environment.yaml" envReader = YamlEnvReader(pathToEnvironmentFile, tokenStore) context = Context.getInstance() context.build(restFactory,envReader) pList=ProjectList(options.pathToProjects) pList.exec() #if options.project: # pList.execProject(options.project) #else: # pList.execAll() #rp = ReportPrinter(pList) #rp.append(ConsolePrinter()) #rp.print() except: raise # print("Exception occured during yammo processing: ", sys.exc_info()[1]) if __name__ == "__main__": main(sys.argv[1:])