3 from sfa.util.faults import *
4 from sfa.util.sfaticket import SfaTicket
6 def start_slice(api, slicename):
7 api.nodemanger.Start(slicename)
9 def stop_slice(api, slicename):
10 api.nodemanager.Stop(slicename)
12 def delete_slice(api, slicename):
13 api.nodemanager.Destroy(slicename)
15 def reset_slice(api, slicename):
16 if not api.sliver_exists(slicename):
17 raise SliverDoesNotExist(slicename)
18 api.nodemanager.ReCreate(slicename)
21 slicenames = api.nodemanager.GetXiDs().keys()
25 os.system("/sbin/reboot")
27 def redeem_ticket(api, ticket_string):
28 ticket = SfaTicket(string=ticket_string)
30 hrn = ticket.attributes['slivers'][0]['hrn']
31 slicename = hrn_to_pl_slicename(hrn)
32 if not api.sliver_exists(slicename):
33 raise SliverDoesNotExist(slicename)
35 # convert ticket to format nm is used to
36 nm_ticket = xmlrpclib.dumps((ticket.attributes,), methodresponse=True)
37 self.api.nodemanager.AdminTicket(nm_ticket)