Compare commits
3 commits
de3c6b8db6
...
cc3805aaf5
| Author | SHA1 | Date | |
|---|---|---|---|
| cc3805aaf5 | |||
| 27fb26dce4 | |||
| 3173cf3d5c |
87 changed files with 3911 additions and 39 deletions
|
|
@ -1,3 +1,10 @@
|
||||||
|
## 0.2.0a8 (2025-05-12)
|
||||||
|
|
||||||
|
### Fix
|
||||||
|
|
||||||
|
- update tests
|
||||||
|
- black
|
||||||
|
|
||||||
## 0.2.0a7 (2025-05-02)
|
## 0.2.0a7 (2025-05-02)
|
||||||
|
|
||||||
### Fix
|
### Fix
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"POT-Creation-Date: 2025-04-29 23:02+0200\n"
|
"POT-Creation-Date: 2025-05-12 08:39+0200\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
|
@ -19,35 +19,35 @@ msgstr ""
|
||||||
msgid "no namespace configured"
|
msgid "no namespace configured"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_ansible/__init__.py:66
|
#: src/rougail/output_ansible/__init__.py:67
|
||||||
msgid "cannot find host namespace \"{0}\""
|
msgid "cannot find host namespace \"{0}\""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_ansible/__init__.py:71
|
#: src/rougail/output_ansible/__init__.py:74
|
||||||
msgid "malformated host namespace \"{0}\", should have the \"hostnames\" key"
|
msgid "malformated host namespace \"{0}\", should have the \"hostnames\" key"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_ansible/__init__.py:98
|
#: src/rougail/output_ansible/__init__.py:111
|
||||||
msgid "cannot find \"hostnames\" in \"{0}\" namespace"
|
msgid "cannot find \"hostnames\" in \"{0}\" namespace"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_ansible/config.py:29
|
#: src/rougail/output_ansible/config.py:30
|
||||||
msgid "parameter added only to be compatible with Ansible"
|
msgid "parameter added only to be compatible with Ansible"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_ansible/config.py:51
|
#: src/rougail/output_ansible/config.py:53
|
||||||
msgid "Configuration of user data or output Ansible"
|
msgid "Configuration of user data or output Ansible"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_ansible/config.py:61
|
#: src/rougail/output_ansible/config.py:64
|
||||||
msgid "Configuration of output Ansible"
|
msgid "Configuration of output Ansible"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_ansible/config.py:72
|
#: src/rougail/output_ansible/config.py:76
|
||||||
msgid "Namespace with host values"
|
msgid "Namespace with host values"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_ansible/config.py:76
|
#: src/rougail/output_ansible/config.py:80
|
||||||
msgid "Only variables in host namespace is available by a host"
|
msgid "Only variables in host namespace is available by a host"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ requires = ["flit_core >=3.8.0,<4"]
|
||||||
|
|
||||||
[project]
|
[project]
|
||||||
name = "rougail.output_ansible"
|
name = "rougail.output_ansible"
|
||||||
version = "0.2.0a7"
|
version = "0.2.0a8"
|
||||||
authors = [{name = "Emmanuel Garette", email = "gnunux@gnunux.info"}]
|
authors = [{name = "Emmanuel Garette", email = "gnunux@gnunux.info"}]
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
description = "Rougail output ansible"
|
description = "Rougail output ansible"
|
||||||
|
|
|
||||||
|
|
@ -55,20 +55,26 @@ class RougailOutputAnsible(RougailOutputJson):
|
||||||
def manage_errors(self) -> bool:
|
def manage_errors(self) -> bool:
|
||||||
if not super().manage_errors():
|
if not super().manage_errors():
|
||||||
if not self.support_namespace:
|
if not self.support_namespace:
|
||||||
self.errors.append(_('no namespace configured'))
|
self.errors.append(_("no namespace configured"))
|
||||||
hosts_config = self.config.option('hosts')
|
hosts_config = self.config.option("hosts")
|
||||||
try:
|
try:
|
||||||
if hosts_config.group_type() != groups.namespace:
|
if hosts_config.group_type() != groups.namespace:
|
||||||
hosts_config = None
|
hosts_config = None
|
||||||
except AttributeError:
|
except AttributeError:
|
||||||
hosts_config = None
|
hosts_config = None
|
||||||
if not hosts_config:
|
if not hosts_config:
|
||||||
self.errors.append(_('cannot find host namespace "{0}"').format(self.host_namespace))
|
self.errors.append(
|
||||||
|
_('cannot find host namespace "{0}"').format(self.host_namespace)
|
||||||
|
)
|
||||||
else:
|
else:
|
||||||
try:
|
try:
|
||||||
hosts_config.option('hostnames').name()
|
hosts_config.option("hostnames").name()
|
||||||
except AttributeError:
|
except AttributeError:
|
||||||
self.errors.append(_('malformated host namespace "{0}", should have the "hostnames" key').format(self.host_namespace))
|
self.errors.append(
|
||||||
|
_(
|
||||||
|
'malformated host namespace "{0}", should have the "hostnames" key'
|
||||||
|
).format(self.host_namespace)
|
||||||
|
)
|
||||||
return super().manage_errors()
|
return super().manage_errors()
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
@ -85,53 +91,67 @@ class RougailOutputAnsible(RougailOutputJson):
|
||||||
|
|
||||||
def json_to_ansible(self):
|
def json_to_ansible(self):
|
||||||
ret = {"_meta": {"hostvars": {}}, "all": {"children": ["ungrouped"]}}
|
ret = {"_meta": {"hostvars": {}}, "all": {"children": ["ungrouped"]}}
|
||||||
if '_warnings' in self.dico:
|
if "_warnings" in self.dico:
|
||||||
ret["_meta"]["hostvars"]["localhost"] = {'_warnings': self.dico.pop('_warnings')}
|
ret["_meta"]["hostvars"]["localhost"] = {
|
||||||
|
"_warnings": self.dico.pop("_warnings")
|
||||||
|
}
|
||||||
ret["ungrouped"] = {"hosts": ["localhost"]}
|
ret["ungrouped"] = {"hosts": ["localhost"]}
|
||||||
if '_errors' in self.dico:
|
if "_errors" in self.dico:
|
||||||
ret["_meta"]["hostvars"].setdefault("localhost", {})['_errors'] = self.dico.pop('_errors')
|
ret["_meta"]["hostvars"].setdefault("localhost", {})["_errors"] = (
|
||||||
|
self.dico.pop("_errors")
|
||||||
|
)
|
||||||
if "ungrouped" not in ret:
|
if "ungrouped" not in ret:
|
||||||
ret["ungrouped"] = {"hosts": ["localhost"]}
|
ret["ungrouped"] = {"hosts": ["localhost"]}
|
||||||
if self.host_namespace in self.dico:
|
if self.host_namespace in self.dico:
|
||||||
hosts = self.dico.pop(self.host_namespace)
|
hosts = self.dico.pop(self.host_namespace)
|
||||||
if "hostnames" not in hosts:
|
if "hostnames" not in hosts:
|
||||||
ret["_meta"]["hostvars"].setdefault("localhost", {}).setdefault('_errors', []).append(_('cannot find "hostnames" in "{0}" namespace').format(self.host_namespace))
|
ret["_meta"]["hostvars"].setdefault("localhost", {}).setdefault(
|
||||||
|
"_errors", []
|
||||||
|
).append(
|
||||||
|
_('cannot find "hostnames" in "{0}" namespace').format(
|
||||||
|
self.host_namespace
|
||||||
|
)
|
||||||
|
)
|
||||||
if "ungrouped" not in ret:
|
if "ungrouped" not in ret:
|
||||||
ret["ungrouped"] = {"hosts": ["localhost"]}
|
ret["ungrouped"] = {"hosts": ["localhost"]}
|
||||||
hostnames = {}
|
hostnames = {}
|
||||||
else:
|
else:
|
||||||
hostnames = hosts['hostnames']
|
hostnames = hosts["hostnames"]
|
||||||
ret_hosts = {}
|
ret_hosts = {}
|
||||||
for name, hosts in hostnames.items():
|
for name, hosts in hostnames.items():
|
||||||
if 'hosts' in hosts:
|
if "hosts" in hosts:
|
||||||
if 'prefix_name' in hosts:
|
if "prefix_name" in hosts:
|
||||||
host_name = hosts['prefix_name']
|
host_name = hosts["prefix_name"]
|
||||||
add_index = True
|
add_index = True
|
||||||
elif len(hosts["hosts"]) == 1:
|
elif len(hosts["hosts"]) == 1:
|
||||||
host_name = hosts["hosts"][0]
|
host_name = hosts["hosts"][0]
|
||||||
add_index = False
|
add_index = False
|
||||||
else:
|
else:
|
||||||
raise Exception("cannot find prefix_name")
|
raise Exception("cannot find prefix_name")
|
||||||
for idx, host in enumerate(hosts['hosts']):
|
for idx, host in enumerate(hosts["hosts"]):
|
||||||
index = str(idx + 1)
|
index = str(idx + 1)
|
||||||
if idx < 9:
|
if idx < 9:
|
||||||
index = '0' + index
|
index = "0" + index
|
||||||
if 'prefix_name' in hosts:
|
if "prefix_name" in hosts:
|
||||||
host_name = hosts['prefix_name'] + index
|
host_name = hosts["prefix_name"] + index
|
||||||
ret_hosts.setdefault(name, {})[host_name] = host
|
ret_hosts.setdefault(name, {})[host_name] = host
|
||||||
ret.setdefault(name, {}).setdefault('hosts', []).append(host_name)
|
ret.setdefault(name, {}).setdefault("hosts", []).append(
|
||||||
|
host_name
|
||||||
|
)
|
||||||
else:
|
else:
|
||||||
ret["all"]["children"].append(name)
|
ret["all"]["children"].append(name)
|
||||||
ret[name] = hosts
|
ret[name] = hosts
|
||||||
for hosts in ret_hosts.values():
|
for hosts in ret_hosts.values():
|
||||||
for host, domain_name in hosts.items():
|
for host, domain_name in hosts.items():
|
||||||
ret['_meta']['hostvars'][host] = {'ansible_host': domain_name}
|
ret["_meta"]["hostvars"][host] = {"ansible_host": domain_name}
|
||||||
if self.namespace_is_hostname:
|
if self.namespace_is_hostname:
|
||||||
host_namespace = normalize_family(host)
|
host_namespace = normalize_family(host)
|
||||||
if host_namespace in self.dico:
|
if host_namespace in self.dico:
|
||||||
ret['_meta']['hostvars'][host].update(self.dico[host_namespace])
|
ret["_meta"]["hostvars"][host].update(
|
||||||
|
self.dico[host_namespace]
|
||||||
|
)
|
||||||
else:
|
else:
|
||||||
ret['_meta']['hostvars'][host].update(self.dico)
|
ret["_meta"]["hostvars"][host].update(self.dico)
|
||||||
self.dico = ret
|
self.dico = ret
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
__version__ = "0.2.0a7"
|
__version__ = "0.2.0a8"
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,8 @@ def get_rougail_config(
|
||||||
*,
|
*,
|
||||||
backward_compatibility=True,
|
backward_compatibility=True,
|
||||||
) -> dict:
|
) -> dict:
|
||||||
options = [f"""
|
options = [
|
||||||
|
f"""
|
||||||
list:
|
list:
|
||||||
description: {_('parameter added only to be compatible with Ansible')}
|
description: {_('parameter added only to be compatible with Ansible')}
|
||||||
default: false
|
default: false
|
||||||
|
|
@ -44,7 +45,8 @@ json:
|
||||||
disabled
|
disabled
|
||||||
{{% endif %}}
|
{{% endif %}}
|
||||||
|
|
||||||
""", f"""
|
""",
|
||||||
|
f"""
|
||||||
ansible:
|
ansible:
|
||||||
exists: true
|
exists: true
|
||||||
redefine: true
|
redefine: true
|
||||||
|
|
@ -56,7 +58,8 @@ ansible:
|
||||||
disabled
|
disabled
|
||||||
{{% endif %}}
|
{{% endif %}}
|
||||||
|
|
||||||
""", f"""
|
""",
|
||||||
|
f"""
|
||||||
ansible:
|
ansible:
|
||||||
description: {_('Configuration of output Ansible')}
|
description: {_('Configuration of output Ansible')}
|
||||||
exists: false
|
exists: false
|
||||||
|
|
@ -65,7 +68,8 @@ ansible:
|
||||||
when_not: ansible
|
when_not: ansible
|
||||||
propertyerror: false
|
propertyerror: false
|
||||||
|
|
||||||
""", f"""
|
""",
|
||||||
|
f"""
|
||||||
ansible:
|
ansible:
|
||||||
|
|
||||||
host_namespace:
|
host_namespace:
|
||||||
|
|
@ -75,7 +79,8 @@ ansible:
|
||||||
namespace_is_hostname:
|
namespace_is_hostname:
|
||||||
description: {_('Only variables in host namespace is available by a host')}
|
description: {_('Only variables in host namespace is available by a host')}
|
||||||
default: false
|
default: false
|
||||||
"""]
|
""",
|
||||||
|
]
|
||||||
return {
|
return {
|
||||||
"name": "ansible",
|
"name": "ansible",
|
||||||
"process": "output",
|
"process": "output",
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
from gettext import translation
|
from gettext import translation
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
t = translation("rougail_output_ansible", str(Path(__file__).parent / "locale"), fallback=True)
|
t = translation(
|
||||||
|
"rougail_output_ansible", str(Path(__file__).parent / "locale"), fallback=True
|
||||||
|
)
|
||||||
|
|
||||||
_ = t.gettext
|
_ = t.gettext
|
||||||
|
|
|
||||||
36
tests/results/test_namespace/00_0no_variable.json
Normal file
36
tests/results/test_namespace/00_0no_variable.json
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"var1": "a_value",
|
||||||
|
"var2": "a_value"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"var2": "a_value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"var1": "a_value",
|
||||||
|
"var2": "a_value"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"var2": "a_value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1",
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1",
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var3": "value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var3": "value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,44 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var2": "string1",
|
||||||
|
"var3": "value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var2": "string1",
|
||||||
|
"var3": "value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var2": "value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var2": "value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,44 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var2": "value",
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var2": "value",
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
48
tests/results/test_namespace/04_5validators_multi3.json
Normal file
48
tests/results/test_namespace/04_5validators_multi3.json
Normal file
|
|
@ -0,0 +1,48 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
66
tests/results/test_namespace/40_0leadership_reduce.json
Normal file
66
tests/results/test_namespace/40_0leadership_reduce.json
Normal file
|
|
@ -0,0 +1,66 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"leader": "value_1",
|
||||||
|
"follower": "string1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "value_2",
|
||||||
|
"follower": "string2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "value_3",
|
||||||
|
"follower": "string3"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"leader": "value_1",
|
||||||
|
"follower": "string1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "value_2",
|
||||||
|
"follower": "string2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "value_3",
|
||||||
|
"follower": "string3"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,60 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {
|
||||||
|
"var": "a value"
|
||||||
|
},
|
||||||
|
"dynval2": {
|
||||||
|
"var": "a value"
|
||||||
|
},
|
||||||
|
"var2": "a value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {
|
||||||
|
"var": "a value"
|
||||||
|
},
|
||||||
|
"dynval2": {
|
||||||
|
"var": "a value"
|
||||||
|
},
|
||||||
|
"var2": "a value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,60 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {
|
||||||
|
"var": true
|
||||||
|
},
|
||||||
|
"dynval2": {
|
||||||
|
"var": true
|
||||||
|
},
|
||||||
|
"var2": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {
|
||||||
|
"var": true
|
||||||
|
},
|
||||||
|
"dynval2": {
|
||||||
|
"var": true
|
||||||
|
},
|
||||||
|
"var2": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,78 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {
|
||||||
|
"var": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"dynval2": {
|
||||||
|
"var": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"var2": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {
|
||||||
|
"var": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"dynval2": {
|
||||||
|
"var": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"var2": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,78 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"val1": {
|
||||||
|
"val1": {
|
||||||
|
"var": "string1"
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"val1": {
|
||||||
|
"var": "string1"
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"val1": {
|
||||||
|
"val1": {
|
||||||
|
"var": "string1"
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"val1": {
|
||||||
|
"var": "string1"
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
36
tests/results/test_namespace_mandatory/00_0no_variable.json
Normal file
36
tests/results/test_namespace_mandatory/00_0no_variable.json
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"var1": "a_value",
|
||||||
|
"var2": "a_value"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"var1": "a_value",
|
||||||
|
"var2": "a_value"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1",
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1",
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,44 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var2": "string1",
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var2": "string1",
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,44 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1",
|
||||||
|
"var2": "string1",
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1",
|
||||||
|
"var2": "string1",
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1",
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1",
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,44 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,58 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"leader": "val1",
|
||||||
|
"follower": "string1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "val2",
|
||||||
|
"follower": "string2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"leader": "val1",
|
||||||
|
"follower": "string1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "val2",
|
||||||
|
"follower": "string2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,120 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"leader": "string1",
|
||||||
|
"follower1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"follower2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "string2",
|
||||||
|
"follower1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"follower2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "string3",
|
||||||
|
"follower1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"follower2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"leader": "string1",
|
||||||
|
"follower1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"follower2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "string2",
|
||||||
|
"follower1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"follower2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "string3",
|
||||||
|
"follower1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"follower2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,60 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {
|
||||||
|
"var": "a value"
|
||||||
|
},
|
||||||
|
"dynval2": {
|
||||||
|
"var": "a value"
|
||||||
|
},
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {
|
||||||
|
"var": "a value"
|
||||||
|
},
|
||||||
|
"dynval2": {
|
||||||
|
"var": "a value"
|
||||||
|
},
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,60 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {
|
||||||
|
"var": true
|
||||||
|
},
|
||||||
|
"dynval2": {
|
||||||
|
"var": true
|
||||||
|
},
|
||||||
|
"var2": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {
|
||||||
|
"var": true
|
||||||
|
},
|
||||||
|
"dynval2": {
|
||||||
|
"var": true
|
||||||
|
},
|
||||||
|
"var2": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,80 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {
|
||||||
|
"var": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"dynval2": {
|
||||||
|
"var": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"var2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {
|
||||||
|
"var": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"dynval2": {
|
||||||
|
"var": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"var2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,78 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"val1": {
|
||||||
|
"val1": {
|
||||||
|
"var": "string1"
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"val1": {
|
||||||
|
"var": "string1"
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"val1": {
|
||||||
|
"val1": {
|
||||||
|
"var": "string1"
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"val1": {
|
||||||
|
"var": "string1"
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
36
tests/results/test_namespace_read_write/00_0no_variable.json
Normal file
36
tests/results/test_namespace_read_write/00_0no_variable.json
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var2": "a_value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var2": "a_value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": null,
|
||||||
|
"var2": null
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": null,
|
||||||
|
"var2": null
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var3": "value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var3": "value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var2": null,
|
||||||
|
"var3": "value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var2": null,
|
||||||
|
"var3": "value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var3": null
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value",
|
||||||
|
"var3": null
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,48 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,66 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"leader": "value_1",
|
||||||
|
"follower": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "value_2",
|
||||||
|
"follower": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "value_3",
|
||||||
|
"follower": null
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"leader": "value_1",
|
||||||
|
"follower": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "value_2",
|
||||||
|
"follower": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "value_3",
|
||||||
|
"follower": null
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": "a value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": "a value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,58 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,78 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"val1": {
|
||||||
|
"val1": {
|
||||||
|
"var": null
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": null
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"val1": {
|
||||||
|
"var": null
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": null
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"val1": {
|
||||||
|
"val1": {
|
||||||
|
"var": null
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": null
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"val1": {
|
||||||
|
"var": null
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": null
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1",
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1",
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var2": "string1",
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var2": "string1",
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1",
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1",
|
||||||
|
"var3": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,44 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,58 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"leader": "val1",
|
||||||
|
"follower": "string1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "val2",
|
||||||
|
"follower": "string2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"leader": "val1",
|
||||||
|
"follower": "string1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "val2",
|
||||||
|
"follower": "string2"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,120 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"leader": "string1",
|
||||||
|
"follower1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"follower2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "string2",
|
||||||
|
"follower1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"follower2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "string3",
|
||||||
|
"follower1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"follower2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": [
|
||||||
|
{
|
||||||
|
"leader": "string1",
|
||||||
|
"follower1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"follower2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "string2",
|
||||||
|
"follower1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"follower2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"leader": "string3",
|
||||||
|
"follower1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"follower2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,60 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,78 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"val1": {
|
||||||
|
"val1": {
|
||||||
|
"var": "string1"
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"val1": {
|
||||||
|
"var": "string1"
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"val1": {
|
||||||
|
"val1": {
|
||||||
|
"var": "string1"
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": "string1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"val1": {
|
||||||
|
"var": "string1"
|
||||||
|
},
|
||||||
|
"val2": {
|
||||||
|
"var": "string1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var2": "a_value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var2": "a_value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"localhost": {
|
||||||
|
"_errors": [
|
||||||
|
"The following variables are mandatory but have no value:",
|
||||||
|
" - rougail.var1 (a first variable)",
|
||||||
|
" - rougail.var2 (a second variable)"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"ungrouped": {
|
||||||
|
"hosts": [
|
||||||
|
"localhost"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var3": "value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var3": "value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"localhost": {
|
||||||
|
"_errors": [
|
||||||
|
"The following variables are mandatory but have no value:",
|
||||||
|
" - rougail.var2 (a second variable)"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"ungrouped": {
|
||||||
|
"hosts": [
|
||||||
|
"localhost"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": "value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"localhost": {
|
||||||
|
"_errors": [
|
||||||
|
"The following variables are mandatory but have no value:",
|
||||||
|
" - rougail.var3 (a third variable)"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"ungrouped": {
|
||||||
|
"hosts": [
|
||||||
|
"localhost"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,48 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
0,
|
||||||
|
1,
|
||||||
|
2
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"localhost": {
|
||||||
|
"_errors": [
|
||||||
|
"The following variables are mandatory but have no value:",
|
||||||
|
" - rougail.leadership.follower (a follower)",
|
||||||
|
" - rougail.leadership.follower (a follower)",
|
||||||
|
" - rougail.leadership.follower (a follower)"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"ungrouped": {
|
||||||
|
"hosts": [
|
||||||
|
"localhost"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"leadership": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": "a value"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": "a value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,58 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"GROUP1_01": {
|
||||||
|
"ansible_host": "group1.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"GROUP2_01": {
|
||||||
|
"ansible_host": "group2.net",
|
||||||
|
"rougail": {
|
||||||
|
"var1": [
|
||||||
|
"val1",
|
||||||
|
"val2"
|
||||||
|
],
|
||||||
|
"dynval1": {},
|
||||||
|
"dynval2": {},
|
||||||
|
"var2": [
|
||||||
|
"a value",
|
||||||
|
"a second value"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped",
|
||||||
|
"groups"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group1": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP1_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"group2": {
|
||||||
|
"hosts": [
|
||||||
|
"GROUP2_01"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"groups": {
|
||||||
|
"children": [
|
||||||
|
"group1",
|
||||||
|
"group2"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hostvars": {
|
||||||
|
"localhost": {
|
||||||
|
"_errors": [
|
||||||
|
"The following variables are mandatory but have no value:",
|
||||||
|
" - rougail.val1.val1.var (A dynamic variable)",
|
||||||
|
" - rougail.val2.val2.var (A dynamic variable)",
|
||||||
|
" - rougail.val1.val1.var (A dynamic variable)",
|
||||||
|
" - rougail.val2.val2.var (A dynamic variable)"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"all": {
|
||||||
|
"children": [
|
||||||
|
"ungrouped"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"ungrouped": {
|
||||||
|
"hosts": [
|
||||||
|
"localhost"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in a new issue