# logger from pandacommon.pandalogger.PandaLogger import PandaLogger logger = PandaLogger().getLogger('JobGenerator') from pandajedi.jedicore.MsgWrapper import MsgWrapper tmpLog = MsgWrapper(logger) from pandajedi.jedicore.JediTaskBufferInterface import JediTaskBufferInterface tbIF = JediTaskBufferInterface() tbIF.setupInterface() siteMapper = tbIF.getSiteMapper() from pandajedi.jediddm.DDMInterface import DDMInterface ddmIF = DDMInterface() ddmIF.setupInterface() from pandajedi.jediorder.JobBroker import JobBroker from pandajedi.jediorder.JobSplitter import JobSplitter from pandajedi.jediorder.JobGenerator import JobGeneratorThread from pandajedi.jedicore.ThreadUtils import ThreadPool,ListWithLock from pandajedi.jediorder.TaskSetupper import TaskSetupper import sys jediTaskID = int(sys.argv[1]) try: datasetID = [int(sys.argv[2])] except: datasetID = None
from pandajedi.jedicore.JediTaskBufferInterface import JediTaskBufferInterface from pandajedi.jediorder.JobThrottler import JobThrottler tbIF = JediTaskBufferInterface() tbIF.setupInterface() vo = 'atlas' prodSourceLabel = 'managed' cloud = 'WORLD' # get SiteMapper siteMapper = tbIF.getSiteMapper() wqMap = tbIF.getWorkQueueMap() jt = JobThrottler(vo, prodSourceLabel) jt.initializeMods(tbIF) workQueues = wqMap.getAlignedQueueList(vo, prodSourceLabel) resource_types = tbIF.load_resource_types() for workQueue in workQueues: for resource_type in resource_types: print( jt.toBeThrottled(vo, prodSourceLabel, cloud, workQueue, resource_type.resource_name))
from pandajedi.jedicore.JediTaskBufferInterface import JediTaskBufferInterface # Set up the task buffer interface tb_if = JediTaskBufferInterface() tb_if.setupInterface() # Get the site mapper site_mapper = tb_if.getSiteMapper() # Define a random site of panda sites panda_sites = ['ANALY_DESY-HH', 'ANALY_DESY-HH_TEST', 'WT2_Install', 'BNL_Test_2_CE_1', 'ANALY_IN2P3-CC-T2_RD', 'UKI-SOUTHGRID-OX-HEP_SL6', 'RU-Protvino-IHEP', 'ANALY_NICS_Kraken', 'ANALY_TRIUMF_HIMEM', 'TESTGLEXEC', 'ANALY_GRIF-LPNHE', 'UKI-SCOTGRID-GLASGOW_MCORE', 'BNL_PROD', 'RAL-LCG2_SL6'] # Test the getSiteInputStorageEndpointMap function # print tb_if.getSiteInputStorageEndpointMap(panda_sites, site_mapper) # for panda_site in panda_sites: # print panda_site # tmp_site_spec = site_mapper.getSite('ANALY_DESY-HH') # print '------------------- ddm -------------------' # print 'ddm_input: {0}, ddm_output: {1}'.format(tmp_site_spec.ddm_input, tmp_site_spec.ddm_output) # print '------------------- setokens values -------------------' # print 'setokens_input: {0}, setokens_output: {1}'.format(tmp_site_spec.setokens_input.values(), # tmp_site_spec.setokens_output.values()) # print '------------------- setokens -------------------' # print 'setokens_input: {0}, setokens_output: {1}'.format(tmp_site_spec.setokens_input, # tmp_site_spec.setokens_output) from pandaserver.dataservice import DataServiceUtils # noqa: E402 sites = site_mapper.getCloud('WORLD')['sites']