5 from optparse import OptionParser
7 from reboot import pcu_name, get_pcu_values
10 from config import config
13 for key in dict.keys():
14 print "%30s : %s" % (key, dict[key])
16 parser = OptionParser()
17 parser.set_defaults(withpcu=False,
19 parser.add_option("-f", "--nodelist",dest="filename",default="", metavar="FILE",
20 help="Provide the input file for the downnode list")
21 parser.add_option("", "--refresh", action="store_true", dest="refresh",
22 help="Refresh the cached values")
25 config = config(parser)
29 k = config.__dict__.keys()
32 print o, "=", config.__dict__[o]
33 print "Add --run to actually perform the command"
36 pculist = database.if_cached_else_refresh(1,
39 lambda : plc.GetPCUs())
43 if pcu['model'] == None:
46 if True: # pcu['model'].find("APC AP79xx/Masterswitch") >= 0:
48 values = get_pcu_values(pcu['pcu_id'])
49 if 'portstatus' not in values:
52 if values['reboot'] == 0 or (not isinstance(values['reboot'],int) and values['reboot'].find("error") >= 0):
53 portstatus = "22:%(22)s 23:%(23)s" % values['portstatus']
54 if values['reboot'] == 0:
55 print "%6d %20s %50s %s" % (pcu['pcu_id'], pcu['password'], "%s@%s" % (pcu['username'], host), portstatus)
57 #database.dbDump("pculist", pculist, 'php')