if not opts.workflow: parser.error("Missing -l|--list <workflows> argument.") if ("CMSSW_VERSION" not in environ) or ("CMSSW_BASE" not in environ) or ("SCRAM_ARCH" not in environ): print("ERROR: Unable to file the release environment, please make sure you have set the cmssw environment before calling this script") exit(1) if opts.dryRun: environ["CMSSW_DRY_RUN"]="true" if opts.nonThreaded: environ["CMSSW_NON_THREADED"]="true" elif "CMSSW_NON_THREADED" in environ: del os.environ['CMSSW_NON_THREADED'] thrds = cmsRunProcessCount cmssw_ver = environ["CMSSW_VERSION"] arch = environ["SCRAM_ARCH"] cmssw_base = environ["CMSSW_BASE"] logger=None if not opts.dryRun: logger=LogUpdater(dirIn=cmssw_base) if logger and not opts.force: doneWFs = logger.getDoneRelvals() print("Already done workflows: ",doneWFs) wfs = opts.workflow.split(",") opts.workflow = ",".join([w for w in wfs if (w not in doneWFs)]) print("Workflow to run:",opts.workflow) if re.match("^CMSSW_(9_([3-9]|[1-9][0-9]+)|[1-9][0-9]+)_.*$",cmssw_ver): e=0 if opts.workflow: stime = time() p=Popen("%s/jobs/create-relval-jobs.py %s" % (SCRIPT_DIR, opts.workflow),shell=True) e=waitpid(p.pid,0)[1] print("Time took to create jobs:",int(time()-stime),"sec") if e: exit(e) p = None