X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fmanagers%2Fcomponent_manager_pl.py;h=2e1b3c3f7b77c65f4040e0af8d30a870bb96bad8;hb=5982c08ca1c1f4e248d6fbc161a07c5ef095902a;hp=02d2d9a9a788876d2c85e1a37af56078ca24e05f;hpb=2346ab3030acc5cc2d710cc72db62fcbc5d75e77;p=sfa.git diff --git a/sfa/managers/component_manager_pl.py b/sfa/managers/component_manager_pl.py index 02d2d9a9..2e1b3c3f 100644 --- a/sfa/managers/component_manager_pl.py +++ b/sfa/managers/component_manager_pl.py @@ -1,29 +1,44 @@ import os import xmlrpclib from sfa.util.faults import * -from sfa.util.misc import * +from sfa.util.namespace import * from sfa.util.sfaticket import SfaTicket -def start_slice(api, slicename): - record = {'name': hrn_to_pl_slicename(slicename)} - api.nodemanger.Start(record) +def init_server(): + from sfa.server import sfa_component_setup + # get current trusted gids + try: + sfa_component_setup.get_trusted_certs() + except: + # our keypair may be old, try refreshing + sfa_component_setup.get_node_key() + sfa_component_setup.get_credential(force=True) + sfa_component_setup.get_trusted_certs() + +def start_slice(api, xrn): + hrn, type = urn_to_hrn(xrn) + slicename = hrn_to_pl_slicename(hrn) + api.nodemanger.Start(slicename) -def stop_slice(api, slicename): - record = {'name': hrn_to_pl_slicename(slicename)} - api.nodemanager.Stop(record) +def stop_slice(api, xrn): + hrn, type = urn_to_hrn(xrn) + slicename = hrn_to_pl_slicename(hrn) + api.nodemanager.Stop(slicename) -def delete_slice(api, slicename): - record = {'name': hrn_to_pl_slicename(slicename)} - api.nodemanager.Destroy(record) +def delete_slice(api, xrn): + hrn, type = urn_to_hrn(xrn) + slicename = hrn_to_pl_slicename(hrn) + api.nodemanager.Destroy(slicename) -def reset_slice(api, slicename): - record = {'name': hrn_to_pl_slicename(slicename)} +def reset_slice(api, xrn): + hrn, type = urn_to_hrn(xrn) + slicename = hrn_to_pl_slicename(hrn) if not api.sliver_exists(slicename): raise SliverDoesNotExist(slicename) - api.nodemanager.ReCreate(record) + api.nodemanager.ReCreate(slicename) def get_slices(api): - slicenames = api.nodemanager.GetXiDs().keys() + slicenames = api.nodemanager.GetXIDs().keys() return slicenames def roboot(): @@ -39,6 +54,6 @@ def redeem_ticket(api, ticket_string): # convert ticket to format nm is used to nm_ticket = xmlrpclib.dumps((ticket.attributes,), methodresponse=True) - self.api.nodemanager.AdminTicket(nm_ticket) + api.nodemanager.AdminTicket(nm_ticket)