move clean_policy.py into monitor package
[monitor.git] / siteinfo.py
index d248b99..609cde2 100755 (executable)
@@ -1,22 +1,20 @@
 #!/usr/bin/python
 
-import plc
-import auth
-api = plc.PLC(auth.auth, auth.plc)
+from monitor.wrapper import plc
+api = plc.getAuthAPI()
 
-import database
-import reboot
+from monitor import database
+from monitor.pcu import reboot
 
 import time
-from model import *
 from nodecommon import *
 
-import config as configmodule
+from monitor import util
+from monitor import parser as parsermodule
+from monitor.model import *
 
-from config import config as cfg
-from optparse import OptionParser
 
-parser = OptionParser()
+parser = parsermodule.getParser()
 parser.set_defaults(site=None, 
                                        findbad=False,
                                        enable=False,
@@ -30,10 +28,8 @@ parser.add_option("", "--enable", dest="enable", action="store_true",
                                        help="")
 parser.add_option("", "--disable", dest="disable", action="store_true",
                                        help="")
-config = cfg(parser)
-config.parse_args()
+config = parsermodule.parse_args(parser)
 
-from unified_model import *
 def color_sitestatus(status):
        if status == "good":
                return green(status)
@@ -71,7 +67,7 @@ def plc_print_siteinfo(plcsite):
        print "   Checked: %s" % time.ctime()
        print "\t                               host     | state | obs   |   created   |   updated   | last_contact "
        for plcnode in nodes:
-               fbnode = fb['nodes'][plcnode['hostname']]['values']
+               fbnode = FindbadNodeRecord.get_latest_by(hostname=plcnode['hostname']).to_dict()
                plcnode['state'] = color_boot_state(get_current_state(fbnode))
                print "\t  %37s |  %5s |  %5s | %11.11s | %11.11s | %12s " % \
                (plcnode['hostname'], color_boot_state(plcnode['boot_state']), plcnode['state'], 
@@ -79,7 +75,6 @@ def plc_print_siteinfo(plcsite):
                diff_time(plcnode['last_contact']))
 
 
-fb = database.dbLoad("findbad")
 act_all = database.dbLoad("act_all")
 
 for site in config.args:
@@ -95,7 +90,7 @@ for site in config.args:
                file = "findbad.txt"
                nodes = api.GetNodes(plc_siteinfo['node_ids'], ['hostname'])
                nodes = [ n['hostname'] for n in nodes ]
-               configmodule.setFileFromList(file, nodes)
+               util.file.setFileFromList(file, nodes)
                os.system("./findbad.py --cachenodes --debug=0 --dbname=findbad --increment --nodelist %s" % file)
 
        print "%(login_base)s %(url)s" % plc_siteinfo