ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CRAB/python/CredentialRenew.py
Revision: 1.1
Committed: Mon Dec 8 21:05:26 2008 UTC (16 years, 4 months ago) by spiga
Content type: text/x-python
Branch: MAIN
Log Message:
allow to renew credential while using the server. Works both for Proxy and Token

File Contents

# User Rev Content
1 spiga 1.1 from Actor import *
2     from crab_util import *
3     import common
4     from ProdCommon.Credential.CredentialAPI import CredentialAPI
5    
6     class CredentialRenew(Actor):
7    
8     def __init__(self, cfg_params):
9    
10     self.credentialType = 'Proxy'
11     if common.scheduler.name().upper() in ['LSF', 'CAF']:
12     self.credentialType = 'Token'
13    
14     def run(self):
15     """
16     """
17     common.logger.debug(5, "CredentialRenew::run() called")
18     self.renewer()
19     common.logger.message("Credential successfully delegated to the server.\n")
20     return
21    
22     def renewer(self):
23     """
24     """
25     myproxyserver = self.cfg_params.get('EDG.proxy_server', 'myproxy.cern.ch')
26     configAPI = {'credential' : self.credentialType, \
27     'myProxySvr' : myproxyserver,\
28     'serverDN' : self.server_dn,\
29     'shareDir' : common.work_space.shareDir() ,\
30     'userName' : UnixUserName(),\
31     'serverName' : self.server_name \
32     }
33     try:
34     CredAPI = CredentialAPI( configAPI )
35     except Exception, err :
36     common.logger.debug(3, "Configuring Credential API: " +str(traceback.format_exc()))
37     raise CrabException("ERROR: Unable to configure Credential Client API %s\n"%str(err))
38     if not CredAPI.checkCredential(Time=100) :
39     common.logger.message("Please renew your %s :\n"%self.credentialType)
40     try:
41     CredAPI.ManualRenewCredential()
42     except Exception, ex:
43     raise CrabException(str(ex))
44     try:
45     dict = CredAPI.registerCredential(sub)
46     except Exception, err:
47     common.logger.debug(3, "Registering Credentials : " +str(traceback.format_exc()))
48     raise CrabException("ERROR: Unable to register %s delegating server: %s\n"%(self.credentialType,self.server_name ))