From ea70295d8df15e5748adffd2f40be4077afcf466 Mon Sep 17 00:00:00 2001 From: Rick Bradshow Date: Fri, 1 Sep 2006 19:23:12 +0000 Subject: added this little tool to parse through the clients file to help find certain types of machines. git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@2167 ce84e21b-d406-0410-9b95-82705330c041 --- tools/client-query.py | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100755 tools/client-query.py (limited to 'tools') diff --git a/tools/client-query.py b/tools/client-query.py new file mode 100755 index 000000000..e2de0593c --- /dev/null +++ b/tools/client-query.py @@ -0,0 +1,33 @@ +#!/usr/bin/python + +import lxml.etree, sys + +#this will be replaced by redeadin config file, but I am in a hurry right now +prefix = "/disks/bcfg2" + +if len(sys.argv) < 2: + print "Usage client-query.py -d|u|p " + print "\t -d\t\t shows the clients that are currently down" + print "\t -u\t\t shows the clients that are currently up" + print "\t -p \t shows all the clients of that profile" + sys.exit(1) + +xml = lxml.etree.parse('%s/Metadata/clients.xml'%prefix) +for client in xml.findall('.//Client'): + if '-u' in sys.argv: + if client.get("pingable") == "Y": + print client.get("name") + elif '-d' in sys.argv: + if client.get("pingable") == "N": + print client.get("name") + elif '-p' in sys.argv and sys.argv[sys.argv.index('-p') + 1] != '': + if client.get("profile") == sys.argv[sys.argv.index('-p') + 1]: + print client.get("name") + elif '-a' in sys.argv: + print client.get("name") + + + + + + -- cgit v1.2.3-1-g7c22