X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfa%2Fmanagers%2Fcomponent_manager_pl.py;h=ec5e24c6bbd12b14189960f53900c64ddd9a70dc;hb=1e95f8a388325499564df5f8eb6eb1fd10ca2d42;hp=e9643ea63d3d45458c5ed3cf60e9fad0842530ea;hpb=57feff63acc467c8ffadd0858a09724ba22a57bc;p=sfa.git diff --git a/sfa/managers/component_manager_pl.py b/sfa/managers/component_manager_pl.py index e9643ea6..ec5e24c6 100644 --- a/sfa/managers/component_manager_pl.py +++ b/sfa/managers/component_manager_pl.py @@ -1,8 +1,14 @@ import os import xmlrpclib + from sfa.util.faults import * -from sfa.util.namespace import * -from sfa.util.sfaticket import SfaTicket +from sfa.util.plxrn import PlXrn +from sfa.trust.sfaticket import SfaTicket +from sfa.util.version import version_core + +def GetVersion(api): + return version_core({'interface':'component', + 'testbed':'myplc'}) def init_server(): from sfa.server import sfa_component_setup @@ -14,30 +20,34 @@ def init_server(): sfa_component_setup.get_node_key() sfa_component_setup.get_credential(force=True) sfa_component_setup.get_trusted_certs() + +def SliverStatus(api, slice_xrn, creds): + result = {} + result['geni_urn'] = slice_xrn + result['geni_status'] = 'unknown' + result['geni_resources'] = {} + return result -def start_slice(api, xrn): - hrn, type = urn_to_hrn(xrn) - slicename = hrn_to_pl_slicename(hrn) +def start_slice(api, xrn, creds): + slicename = PlXrn(xrn, type='slice').pl_slicename() api.nodemanger.Start(slicename) -def stop_slice(api, xrn): - hrn, type = urn_to_hrn(xrn) - slicename = hrn_to_pl_slicename(hrn) +def stop_slice(api, xrn, creds): + slicename = PlXrn(xrn, type='slice').pl_slicename() api.nodemanager.Stop(slicename) -def delete_slice(api, xrn): - hrn, type = urn_to_hrn(xrn) - slicename = hrn_to_pl_slicename(hrn) +def DeleteSliver(api, xrn, creds, call_id): + slicename = PlXrn(xrn, type='slice').pl_slicename() api.nodemanager.Destroy(slicename) def reset_slice(api, xrn): - hrn, type = urn_to_hrn(xrn) - slicename = hrn_to_pl_slicename(hrn) + slicename = PlXrn(xrn, type='slice').pl_slicename() if not api.sliver_exists(slicename): raise SliverDoesNotExist(slicename) api.nodemanager.ReCreate(slicename) -def get_slices(api): +# xxx outdated - this should accept a credential & call_id +def ListSlices(api): # this returns a tuple, the data we want is at index 1 xids = api.nodemanager.GetXIDs() # unfortunately the data we want is given to us as @@ -46,14 +56,11 @@ def get_slices(api): slices = eval(xids[1]) return slices.keys() -def reboot(): - os.system("/sbin/reboot") - def redeem_ticket(api, ticket_string): ticket = SfaTicket(string=ticket_string) ticket.decode() hrn = ticket.attributes['slivers'][0]['hrn'] - slicename = hrn_to_pl_slicename(hrn) + slicename = PlXrn (hrn).pl_slicename() if not api.sliver_exists(slicename): raise SliverDoesNotExist(slicename)