X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plc.py;fp=plc.py;h=5bc5349e90b9b72082e08c49f65c875c87e46212;hb=b28a7b27ef4f9beb0017314f6fde0a622f10f626;hp=6e94fdcff5e973e68275c8deaa62a0713d3419ee;hpb=f40c9d96c61735965b1bb5d711ce9aa39e7706f7;p=monitor.git diff --git a/plc.py b/plc.py index 6e94fdc..5bc5349 100644 --- a/plc.py +++ b/plc.py @@ -10,9 +10,22 @@ import xml, xmlrpclib import logging -import auth +try: + import auth +except: + class Anon: + def __init__(self): + self.auth = {'AuthMethod': "anonymous"} + auth = Anon() + import time -from config import config,XMLRPC_SERVER +try: + from config import config + debug = config.debug +except: + debug = False + +XMLRPC_SERVER="https://boot.planet-lab.org/PLCAPI/" logger = logging.getLogger("monitor") @@ -181,7 +194,7 @@ def nodePOD(nodename): api = xmlrpclib.Server(XMLRPC_SERVER, verbose=False) logger.info("Sending POD to %s" % nodename) try: - if not config.debug: + if not debug: return api.RebootNode(auth.auth, nodename) except Exception, exc: logger.info("nodePOD: %s" % exc) @@ -194,7 +207,7 @@ def suspendSlices(nodename): for slice in slices(siteId(nodename)): logger.info("Suspending slice %s" % slice) try: - if not config.debug: + if not debug: api.AddSliceAttribute(auth.auth, slice, "enabled", "0") except Exception, exc: logger.info("suspendSlices: %s" % exc) @@ -204,7 +217,7 @@ def enableSlices(nodename): for slice in slices(siteId(nodename)): logger.info("Enabling slices %s" % slice) try: - if not config.debug: + if not debug: slice_list = api.GetSlices(auth.auth, {'name': slice}, None) if len(slice_list) == 0: return @@ -233,7 +246,7 @@ def enableSliceCreation(nodename): try: loginbase = siteId(nodename) logger.info("Enabling slice creation for site %s" % loginbase) - if not config.debug: + if not debug: logger.info("\tcalling UpdateSite(%s, enabled=True)" % loginbase) api.UpdateSite(auth.auth, loginbase, {'enabled': True}) except Exception, exc: @@ -250,7 +263,7 @@ def removeSliceCreation(nodename): #numslices = api.GetSites(auth.auth, {"login_base": loginbase}, # ["max_slices"])[0]['max_slices'] logger.info("Removing slice creation for site %s" % loginbase) - if not config.debug: + if not debug: #api.UpdateSite(auth.auth, loginbase, {'max_slices': 0}) api.UpdateSite(auth.auth, loginbase, {'enabled': False}) except Exception, exc: