33
33
34
34
# # from DIRAC
35
35
from DIRAC import gLogger , S_OK , S_ERROR , gConfig
36
+ from DIRAC .Core .Utilities import DErrno
36
37
from DIRAC .FrameworkSystem .Client .MonitoringClient import gMonitor
37
38
from DIRAC .RequestManagementSystem .Client .ReqClient import ReqClient
38
39
from DIRAC .RequestManagementSystem .Client .Request import Request
@@ -279,7 +280,8 @@ def __call__(self):
279
280
if not setupProxy ["OK" ]:
280
281
userSuspended = "User is currently suspended"
281
282
self .request .Error = setupProxy ["Message" ]
282
- if 'has no proxy registered' in setupProxy ["Message" ]:
283
+ # In case the user does not have proxy
284
+ if DErrno .cmpError (setupProxy , DErrno .EPROXYFIND ):
283
285
self .log .error ('Error setting proxy. Request set to Failed:' , setupProxy ["Message" ])
284
286
# If user is no longer registered, fail the request
285
287
for operation in self .request :
@@ -288,7 +290,7 @@ def __call__(self):
288
290
operation .Status = 'Failed'
289
291
elif userSuspended in setupProxy ['Message' ]:
290
292
# If user is suspended, wait for a long time
291
- self .request .NotBefore = datetime . datetime . utcnow () + datetime . timedelta ( hours = 6 )
293
+ self .request .delayNextExecution ( 6 * 60 )
292
294
self .request .Error = userSuspended
293
295
self .log .error ("Error setting proxy: " + userSuspended , self .request .OwnerDN )
294
296
else :
0 commit comments