def __init__(self): aCTATLASProcess.__init__(self) # Get DN from configured proxy file uc = arc.UserConfig() uc.ProxyPath(str(self.arcconf.get(['voms', 'proxypath']))) cred = arc.Credential(uc) dn = cred.GetIdentityName() self.log.info("Running under DN %s" % dn) # Keep a panda object per proxy. The site "type" maps to a specific # proxy role self.pandas = {} # Map the site type to a proxy id in proxies table # In future for analysis the id will change once the job is picked up self.proxymap = {} actp = aCTProxy.aCTProxy(self.log) for role in self.arcconf.getList(['voms', 'roles', 'item']): attr = '/atlas/Role='+role proxyid = actp.getProxyId(dn, attr) if not proxyid: raise Exception("Proxy with DN "+dn+" and attribute "+attr+" was not found in proxies table") proxyfile = actp.path(dn, attribute=attr) # pilot role is mapped to analysis type if role == 'pilot': role = 'analysis' self.pandas[role] = aCTPanda.aCTPanda(self.log, proxyfile) self.proxymap[role] = proxyid # queue interval self.queuestamp=0 self.sites={}
def __init__(self): aCTATLASProcess.__init__(self, ceflavour=['ARC-CE']) # Use production role proxy for checking and removing files # Get DN from configured proxy file cred_type = arc.initializeCredentialsType(arc.initializeCredentialsType.SkipCredentials) uc = arc.UserConfig(cred_type) uc.ProxyPath(str(self.arcconf.get(['voms', 'proxypath']))) cred = arc.Credential(uc) dn = cred.GetIdentityName() actp = aCTProxy(self.log) # Beware hard-coded production role proxyfile = actp.path(dn, '/atlas/Role=production') if not proxyfile: raise Exception('Could not find proxy with production role in proxy table') self.log.info('set proxy path to %s' % proxyfile) self.uc = arc.UserConfig(cred_type) self.uc.ProxyPath(str(proxyfile)) self.uc.UtilsDirPath(str(arc.UserConfig.ARCUSERDIRECTORY)) # Possible file status self.ok = 0 self.retry = 1 self.failed = 2
def __init__(self): aCTATLASProcess.__init__(self) # Get DN from configured proxy file uc = arc.UserConfig() uc.ProxyPath(str(self.arcconf.get(['voms', 'proxypath']))) cred = arc.Credential(uc) dn = cred.GetIdentityName() self.log.info("Running under DN %s" % dn) # Keep a panda object per proxy. The site "type" maps to a specific # proxy role self.pandas = {} # Map the site type to a proxy id in proxies table # In future for analysis the id will change once the job is picked up self.proxymap = {} actp = aCTProxy.aCTProxy(self.log) for role in self.arcconf.getList(['voms', 'roles', 'item']): attr = '/atlas/Role=' + role proxyid = actp.getProxyId(dn, attr) if not proxyid: raise Exception("Proxy with DN " + dn + " and attribute " + attr + " was not found in proxies table") proxyfile = actp.path(dn, attribute=attr) # pilot role is mapped to analysis type psl = 'managed' if role == 'pilot': role = 'analysis' psl = 'user' self.proxymap['panda'] = proxyid self.pandas[role] = aCTPanda.aCTPanda(self.log, proxyfile) self.proxymap[psl] = proxyid # queue interval self.queuestamp = 0 # Register this aCT to APFMon self.apfmon.registerFactory() # AGIS queue info self.sites = {} # Panda info on activated jobs: {queue: {'rc_test': 2, 'rest': 40}} self.activated = {} # Flag for calling getJob no matter what to have a constant stream self.getjob = False
def __init__(self): aCTATLASProcess.__init__(self, ceflavour=['ARC-CE'])
def __init__(self): aCTATLASProcess.__init__(self, ceflavour=['HTCONDOR-CE', 'CREAM-CE'])
def __init__(self): aCTATLASProcess.__init__(self) self.queues = self.conf.get(['cric', 'server']) self.oses = self.conf.get(['cric', 'objectstores']) self.queuesfile = self.conf.get(['cric', 'jsonfilename']) self.osesfile = self.conf.get(['cric', 'osfilename'])