From 1bb8449528adf307f07e772661a70cf34256234c Mon Sep 17 00:00:00 2001 From: Tony Mack Date: Tue, 1 Dec 2009 16:53:02 +0000 Subject: [PATCH] no need to store managers in differnty directories depending on their type, the type is defined in the name --- sfa/managers/component_manager_default.py | 22 +++++++++++++ sfa/managers/component_manager_pl.py | 39 +++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 sfa/managers/component_manager_default.py create mode 100644 sfa/managers/component_manager_pl.py diff --git a/sfa/managers/component_manager_default.py b/sfa/managers/component_manager_default.py new file mode 100644 index 00000000..800857cb --- /dev/null +++ b/sfa/managers/component_manager_default.py @@ -0,0 +1,22 @@ + +def start_slice(api, slicename): + return + +def stop_slice(api, slicename): + return + +def delete_slice(api, slicename): + return + +def reset_slice(api, slicename): + return + +def get_slices(api): + return + +def roboot(): + return + +def redeem_ticket(api, ticket_string): + return + diff --git a/sfa/managers/component_manager_pl.py b/sfa/managers/component_manager_pl.py new file mode 100644 index 00000000..71cc6287 --- /dev/null +++ b/sfa/managers/component_manager_pl.py @@ -0,0 +1,39 @@ +import os +import xmlrpclib +from sfa.util.faults import * +from sfa.util.sfaticket import SfaTicket + +def start_slice(api, slicename): + api.nodemanger.Start(slicename) + +def stop_slice(api, slicename): + api.nodemanager.Stop(slicename) + +def delete_slice(api, slicename): + api.nodemanager.Destroy(slicename) + +def reset_slice(api, slicename): + if not api.sliver_exists(slicename): + raise SliverDoesNotExist(slicename) + api.nodemanager.ReCreate(slicename) + +def get_slices(api): + slicenames = api.nodemanager.GetXiDs().keys() + return slicenames + +def roboot(): + 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) + if not api.sliver_exists(slicename): + raise SliverDoesNotExist(slicename) + + # convert ticket to format nm is used to + nm_ticket = xmlrpclib.dumps((ticket.attributes,), methodresponse=True) + self.api.nodemanager.AdminTicket(nm_ticket) + + -- 2.43.0