|
[root@web1 ~]# cat /etc/ansible/getHosts.py
#!/usr/bin/python
import argparse
try:
import json
except ImportError:
import simplejson as json
'''这里是模拟数据,工作上一般该数据都是从数据库或者缓存中读取的'''
mockData = {
"webservers":{
"hosts": ["192.168.1.65"],
"vars":{
"http_port":8888,
"max_clients":789
}
},
"databases":{
"hosts":["192.168.1.65"],
"vars":{
"action":"Restart MySQL server."
}
}
}
'''模拟数据结束'''
def getList():
'''get list hosts group'''
print json.dumps(mockData)
def getVars(host):
'''Get variables about a specific host'''
print json.dumps(mockData[host]["vars"])
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument('--list',action='store_true',dest='list',help='get all hosts')
parser.add_argument('--host',action='store',dest='host',help='get all hosts')
args = parser.parse_args()
if args.list:
getList()
if args.host:
getVars(args.host) |
|
|