X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fclient%2Fsfi.py;h=9283500893a8ce7e8de369d0a981d300401cb23d;hb=6ac7c0f051e2fb64f14ba1dab389986165ce812d;hp=5a2467dd77ca2111c5d235348261889d417c46b7;hpb=67cc4eb55c98e2ec9194562e8244256ea84f5dcb;p=sfa.git diff --git a/sfa/client/sfi.py b/sfa/client/sfi.py index 5a2467dd..92835008 100755 --- a/sfa/client/sfi.py +++ b/sfa/client/sfi.py @@ -142,7 +142,7 @@ class Sfi: "resources": "[name]", "create": "name rspec", "get_ticket": "name rspec", - "redeem_ticket": "ticket rspec", + "redeem_ticket": "ticket", "delete": "name", "reset": "name", "start": "name", @@ -824,18 +824,19 @@ class Sfi: ticket.save_to_file(filename=file, save_parents=True) def redeem_ticket(self, opts, args): - ticket_file, rspec_file = args[0], args[1] + ticket_file = args[0] # get slice hrn from the ticket + # use this to get the right slice credential ticket = SfaTicket(filename=ticket_file) ticket.decode() - slice_hrn = ticket.attributes['hrn'] + slice_hrn = ticket.attributes['slivers'][0]['hrn'] user_cred = self.get_user_cred() slice_cred = self.get_slice_cred(slice_hrn).save_to_string(save_parents=True) # get a list node hostnames from the nodespecs in the rspec rspec = RSpec() - rspec.parseFile(rspec_file) + rspec.parseString(ticket.rspec) nodespecs = rspec.getDictsByTagName('NodeSpec') hostnames = [nodespec['name'] for nodespec in nodespecs]