consul-demo
38 строк · 913.0 Байт
1
2INPUT_FILE = "./inventory.list"3OUTPUT_FILE = "./inventory.ini"4
5
6def main():7
8input_text = None9with open(INPUT_FILE, 'r') as f:10input_text = f.readlines()11
12inventory = {}13for entry in input_text:14
15(host, ip) = entry.split(":")16(group, num) = host.split("-")17ip = ip[:-1]18
19if group not in inventory:20inventory[group] = []21inventory[group].append({ "host": host, "ip": ip })22
23with open(OUTPUT_FILE, "w") as f:24
25for group in inventory:26f.writelines([f"\n[{group}]\n"])27for entry in inventory[group]:28f.writelines([f"{entry['host']} ansible_host={entry['ip']}\n"])29
30f.writelines([31"\n[java-apps:children]\n",32"gw\n",33"srv\n"34])35
36
37if __name__ == "__main__":38main()39print("done")40