X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=nodegroups.py;h=ecb9c08125bdde6c0422793a093e493952c51816;hb=a1d795311ad8facac7399e73123d53e6c8e72c9d;hp=3f4b98004e3b5233ed9d849a00b3cec4b32bf70b;hpb=ee740a3ff286a9720cd1656cd60a3c85f0f14b29;p=monitor.git diff --git a/nodegroups.py b/nodegroups.py index 3f4b980..ecb9c08 100755 --- a/nodegroups.py +++ b/nodegroups.py @@ -13,19 +13,18 @@ # Given a nodelist, it could tag each one with a nodegroup name. # * -import plc +from monitor import database +from monitor.database.info.model import FindbadNodeRecord +from monitor import util +from monitor.wrapper import plc +from monitor import parser as parsermodule + api = plc.getAuthAPI() -import parser as parsermodule +from monitor.common import * from sets import Set -from nodequery import verify,query_to_dict,node_select - -from nodecommon import * -import database -import util.file def main(): - fb = database.dbLoad("findbad") parser = parsermodule.getParser(['nodesets']) parser.set_defaults( list=True, @@ -59,30 +58,29 @@ def main(): # given to GetNodes nodelist = [] for h in hostlist: - nodelist += api.GetNodes(h) + nodelist.append( plccache.GetNodeByName(h) ) - #nodelist = api.GetNodes(hostlist) group_str = "Given" elif config.site: - site = api.GetSites(config.site) + site = plccache.GetSitesByName([config.site]) if len (site) > 0: site = site[0] - nodelist = api.GetNodes(site['node_ids']) + nodelist = plccache.GetNodesByIds(site['node_ids']) else: nodelist = [] group_str = config.site elif config.nodeselect: - hostlist = node_select(config.nodeselect) - nodelist = api.GetNodes(hostlist) + hostlist = query.node_select(config.nodeselect) + nodelist = [ plccache.GetNodeByName(h) for h in hostlist ] group_str = "selection" else: ng = api.GetNodeGroups({'name' : config.nodegroup}) - nodelist = api.GetNodes(ng[0]['node_ids']) + nodelist = plccache.GetNodesByIds(ng[0]['node_ids']) group_str = config.nodegroup @@ -91,7 +89,7 @@ def main(): ng_nodes = nodelist # Get all nodes - all_nodes = api.GetNodes({'peer_id': None}) + all_nodes = plccache.l_nodes # remove ngnodes from all node list ng_list = [ x['hostname'] for x in ng_nodes ] @@ -121,7 +119,9 @@ def main(): i = 1 for node in nodelist: print "%-2d" % i, - print nodegroup_display(node, fb, config) + fbrec = FindbadNodeRecord.get_latest_by(hostname=node['hostname']) + fbdata = fbrec.to_dict() + print nodegroup_display(node, fbdata, config) i += 1 else: