Rewrote hosts file to tag-based structure
parent
5555c86357
commit
7b797dc8a5
@ -1,19 +0,0 @@
|
|||||||
[bootstrap]
|
|
||||||
nvak.banananet.work
|
|
||||||
morska.banananet.work
|
|
||||||
rurapenthe.banananet.work
|
|
||||||
hardie.khitomer.banananet.work
|
|
||||||
|
|
||||||
[public_available]
|
|
||||||
nvak.banananet.work
|
|
||||||
morska.banananet.work
|
|
||||||
rurapenthe.banananet.work
|
|
||||||
|
|
||||||
[bwcloud_vserver]
|
|
||||||
morska.banananet.work
|
|
||||||
rurapenthe.banananet.work
|
|
||||||
|
|
||||||
[wireguard_backbones]
|
|
||||||
nvak.banananet.work
|
|
||||||
morska.banananet.work
|
|
||||||
rurapenthe.banananet.work
|
|
@ -0,0 +1,27 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import json
|
||||||
|
import sys
|
||||||
|
import yaml
|
||||||
|
|
||||||
|
def parse(path):
|
||||||
|
with open(path, 'r') as stream:
|
||||||
|
try:
|
||||||
|
data = yaml.safe_load(stream)
|
||||||
|
except yaml.YAMLError as e:
|
||||||
|
return AnsibleError(e)
|
||||||
|
ret = { "all": { "hosts": list(), "vars": dict(), "children": list() } , "_meta": { "hostvars": {} } }
|
||||||
|
for host, groups in data.items():
|
||||||
|
ret["all"]["hosts"].append(host)
|
||||||
|
if groups is not None:
|
||||||
|
for group in groups:
|
||||||
|
if not group in ret:
|
||||||
|
ret[group] = dict()
|
||||||
|
ret[group]["hosts"] = list()
|
||||||
|
ret[group]["vars"] = dict()
|
||||||
|
ret[group]["children"] = list()
|
||||||
|
if not host in ret[group]["hosts"]:
|
||||||
|
ret[group]["hosts"].append(host)
|
||||||
|
return ret
|
||||||
|
|
||||||
|
print(parse("hosts.yml"))
|
@ -0,0 +1,16 @@
|
|||||||
|
nvak.banananet.work:
|
||||||
|
- bootstrap
|
||||||
|
- public_available
|
||||||
|
- wireguard_backbones
|
||||||
|
morska.banananet.work:
|
||||||
|
- bwcloud_vserver
|
||||||
|
- bootstrap
|
||||||
|
- public_available
|
||||||
|
- wireguard_backbones
|
||||||
|
rurapenthe.banananet.work:
|
||||||
|
- bwcloud_vserver
|
||||||
|
- bootstrap
|
||||||
|
- public_available
|
||||||
|
- wireguard_backbones
|
||||||
|
hardie.khitomer.banananet.work:
|
||||||
|
- bootstrap
|
Loading…
Reference in New Issue