git://git.onelab.eu
/
sfa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of ssh://git.planet-lab.org/git/sfa
[sfa.git]
/
sfa
/
methods
/
RenewSliver.py
diff --git
a/sfa/methods/RenewSliver.py
b/sfa/methods/RenewSliver.py
index
fd0971a
..
b574a57
100644
(file)
--- a/
sfa/methods/RenewSliver.py
+++ b/
sfa/methods/RenewSliver.py
@@
-3,7
+3,8
@@
from sfa.util.xrn import urn_to_hrn
from sfa.util.method import Method
from sfa.util.parameter import Parameter
from sfa.trust.credential import Credential
from sfa.util.method import Method
from sfa.util.parameter import Parameter
from sfa.trust.credential import Credential
-from dateutil.parser import parse
+from sfa.util.sfatime import utcparse
+import datetime
class RenewSliver(Method):
"""
class RenewSliver(Method):
"""
@@
-30,10
+31,11
@@
class RenewSliver(Method):
valid_creds = self.api.auth.checkCredentials(creds, 'renewsliver', hrn)
# Validate that the time does not go beyond the credential's expiration time
valid_creds = self.api.auth.checkCredentials(creds, 'renewsliver', hrn)
# Validate that the time does not go beyond the credential's expiration time
- requested_time = parse(expiration_time)
+ requested_time =
utc
parse(expiration_time)
if requested_time > Credential(string=valid_creds[0]).get_expiration():
raise InsufficientRights('SliverStatus: Credential expires before requested expiration time')
if requested_time > Credential(string=valid_creds[0]).get_expiration():
raise InsufficientRights('SliverStatus: Credential expires before requested expiration time')
-
+ if requested_time > datetime.datetime.utcnow() + datetime.timedelta(days=60):
+ raise Exception('Cannot renew > 60 days from now')
manager = self.api.get_interface_manager()
manager.renew_slice(self.api, slice_xrn, valid_creds, expiration_time)
manager = self.api.get_interface_manager()
manager.renew_slice(self.api, slice_xrn, valid_creds, expiration_time)