def main(argv): try: opts, args = getopt.getopt(argv, "h", ["help", "version"]) except getopt.GetoptError: print "Error while converting options: unknown option(s) encountered.\n\n" usage(os.path.basename(sys.argv[0])) sys.exit(2) for opt, arg in opts: if opt in ("-h", "--help"): usage(os.path.basename(sys.argv[0])) sys.exit() elif opt in ["--version"]: version() sys.exit() else: print "Unknown parameter", opt if len(args) < 1: #print "Error: No sites file given.\n\n" #usage(os.path.basename(sys.argv[0])) #sys.exit(3) SitesFileName = "grid-sites.xml" else: SitesFileName = args[0]; if not os.path.isfile( SitesFileName ): if os.path.exists( SitesFileName ): print "\n\n****\nError: %s is not a file!\n****\n" % SitesFileName else: print "\n\n****\nError: %s does not exist!\n****\n" % SitesFileName usage(os.path.basename(sys.argv[0])) sys.exit(1) #---Read a sites file #print "%s Parsing sites file %s" % \ # ( time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(time.time())), SitesFileName ) handlerXML = WLDocHandlers.readSiteFile(SitesFileName) #print "%s Sites file processed, proceeding to submission" % \ # time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(time.time())) DictionaryOfSites = handlerXML.getDictionaryOfSites() ListOfSites = AIStorageUtils.dict_sortbykey( DictionaryOfSites, AIStorageUtils.SORT_DESCENDING ) for (id, Site) in ListOfSites: print id, Site['location'], Site['machines'] print
#--- Load JDF generators print "STATUS! Load JDF generators." AJDFGenLoader = WLLoader.GeneratorsLoader( ModulesPath = "jdfprint", AppGenSig = "JDFGenerator", AppGenFuncName = "generateJDF", ErrPrefix = "JDF Generator:" ) try: AJDFGenLoader.loadGenerators() except WLLoader.GeneratorLoaderError, e: print e sys.exit(5) #--- Load site file print "STATUS! Load site file." handlerXML = WLDocHandlers.readSiteFile(SitesFileName) DictionaryOfSites = handlerXML.getDictionaryOfSites() print "Got", len(DictionaryOfSites), "sites from '%s'.\n" % SitesFileName #--- Load workload description print "STATUS! Load workload description." KnownJobNamesList = AWLUnitGenLoader.getKnownGenerators() KnownWorkloadJobNamesList = AWLGenLoader.getKnownGenerators() KnownSiteNamesList = DictionaryOfSites.keys() print "Start getting a workload decription from", WorkloadDescriptionFileName ListOfDefs = WLDocHandlers.readWorkloadDescriptionFile( WorkloadDescriptionFileName, KnownJobNamesList, KnownWorkloadJobNamesList, KnownSiteNamesList)