fixes to make them more stand-alone and general.
authorStephen Soltesz <soltesz@cs.princeton.edu>
Mon, 5 May 2008 16:58:42 +0000 (16:58 +0000)
committerStephen Soltesz <soltesz@cs.princeton.edu>
Mon, 5 May 2008 16:58:42 +0000 (16:58 +0000)
getsshkeys.py
plc.py

index 92860cf..540ba31 100755 (executable)
@@ -4,11 +4,10 @@ import os
 import sys
 import string
 import time
-import soltesz
 import plc
 
 args = {}
-args['known_hosts'] = "/home/soltesz/.ssh/known_hosts"
+args['known_hosts'] =  os.environ['HOME'] + "/.ssh/known_hosts"
 
 class SSHKnownHosts:
        def __init__(self, args = args):
diff --git a/plc.py b/plc.py
index 6e94fdc..5bc5349 100644 (file)
--- a/plc.py
+++ b/plc.py
 
 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: