|
'''
cxx 172.29.1.3 sc_tomcat 8005 8080
'''
def ansiblec(host,cxx_pro_dir=None,cxx_dir=None,cxx_port1=None,cxx_port2=None):
if cxx_port1==None:
stringa = 'ansible-playbook -i /etc/ansible/test.py copy.yml --extra-vars "host=%s"' %(host)
return stringa
else:
stringb = 'ansible-playbook -i /etc/ansible/test.py install.yml --extra-vars "host=%s cxx_pro_dir=%s cxx_dir=%s cxx_port1=%s cxx_port2=%s"'\
%(host,cxx_pro_dir,cxx_dir,cxx_port1,cxx_port2)
return stringb
def grouplist():
inventory = {}
sfile = '/etc/ansible/books.txt'
with open(sfile, 'rb') as f:
iplist=[]
glist=[]
for i in f.readlines():
group = i.strip().split()[0]
grouptomcat=group+"_"+"tomcat"
name = i.strip().split()[1]
cxx_port1=i.strip().split()[3]
cxx_port2=i.strip().split()[4]
iplist.append(ansiblec(name))
glist.append(ansiblec(name,group,grouptomcat,cxx_port1,cxx_port2))
# if not group in inventory:
# inventory[group] = {
# 'hosts': []
# }
# inventory[group]['hosts'].append(name)
# for ip in inventory.iteritems():
# ipt= ip[1]['hosts'][0]
ipset=set(iplist)
gset=set(glist)
# print json.dumps(inventory, indent=4)
with open(dfile,'wb') as f1:
for i in ipset:
line = str(i) + "\n"
f1.write(line)
for i in gset:
line = str(i) + "\n"
f1.write(line)
f1.close()
def hostinfo(name):
vars = {}
vars = {
'admin': 'Jane Jolie',
'datacenter': 1
}
print json.dumps(vars, indent=4)
if __name__ == '__main__':
grouplist() |
|
|