X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=nodegroups.py;h=ecb9c08125bdde6c0422793a093e493952c51816;hb=aa2b8dbdb1ba9aa9ffc8363a6af1559c10d59fbc;hp=e96e7b438c71e656cecf15f9155f83e31f038ff7;hpb=c3f2afdc81c6711c3825c82e2cd4970671575438;p=monitor.git diff --git a/nodegroups.py b/nodegroups.py index e96e7b4..ecb9c08 100755 --- a/nodegroups.py +++ b/nodegroups.py @@ -13,18 +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 def main(): - fb = database.dbLoad("findbad") parser = parsermodule.getParser(['nodesets']) parser.set_defaults( list=True, @@ -52,36 +52,35 @@ def main(): if config.node: hostlist = [ config.node ] else: - hostlist = config.getListFromFile(config.nodelist) + hostlist = util.file.getListFromFile(config.nodelist) # NOTE: preserve order given in file. Otherwise, return values are not in order # 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 @@ -90,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 ] @@ -120,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: