huhahapz 发表于 2018-7-29 12:01:32

ansible安装tomcat8 最终版

'''  
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()
  
            grouptomcat=group+"_"+"tomcat"
  
            name = i.strip().split()
  
            cxx_port1=i.strip().split()
  
            cxx_port2=i.strip().split()
  
            iplist.append(ansiblec(name))
  
            glist.append(ansiblec(name,group,grouptomcat,cxx_port1,cxx_port2))
  
            # if not group in inventory:
  
            #   inventory = {
  
            #         'hosts': []
  
            #   }
  
            # inventory['hosts'].append(name)
  
      # for ip in inventory.iteritems():
  
      #   ipt= ip['hosts']
  
      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()
页: [1]
查看完整版本: ansible安装tomcat8 最终版