Compare commits

...

No commits in common. "0.2.0a9" and "main" have entirely different histories.

1329 changed files with 115 additions and 65842 deletions

View file

@ -1,77 +0,0 @@
## 0.2.0a9 (2025-06-18)
### Fix
- rougail separation
## 0.2.0a8 (2025-05-12)
### Fix
- update tests
- black
## 0.2.0a7 (2025-05-02)
### Fix
- do not force use_data usage
## 0.2.0a6 (2025-04-30)
### Fix
- remove negative_description support
- update tests
- better mandatory support in test
## 0.2.0a5 (2025-04-09)
### Fix
- version
## 0.2.0a4 (2025-04-01)
### Fix
- update tests
## 0.2.0a3 (2025-02-17)
### Fix
- translation
## 0.2.0a2 (2025-02-10)
### Feat
- output return status too
## 0.2.0a1 (2025-01-02)
### Fix
- user data ansible is loaded before
## 0.2.0a0 (2025-01-02)
### Feat
- add namespace_is_hostname option
- add tests
## 0.1.1a2 (2024-11-29)
## 0.1.1a1 (2024-11-28)
### Fix
- better errors support
## 0.1.1a0 (2024-11-27)
### Fix
- first commit

View file

@ -5,8 +5,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"POT-Creation-Date: 2025-02-15 12:43+0100\n" "POT-Creation-Date: 2024-11-01 11:03+0100\n"
"PO-Revision-Date: 2025-02-15 12:44+0100\n" "PO-Revision-Date: 2024-11-01 11:04+0100\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
"Language: fr\n" "Language: fr\n"
@ -16,80 +16,42 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
"X-Generator: Poedit 3.5\n" "X-Generator: Poedit 3.5\n"
#: src/rougail/output_ansible/__init__.py:57 #: src/rougail/output_exporter/__init__.py:73
msgid "no namespace configured" msgid "The following variables are mandatory but have no value:"
msgstr "aucun espace de nom configuré" msgstr "Les variables suiveuses sont obligatoire mais n'ont pas de valeur :"
#: src/rougail/output_ansible/__init__.py:65 #: src/rougail/output_exporter/__init__.py:84
msgid "cannot find host namespace \"{0}\"" msgid "The following variables are inaccessible but are empty and mandatory :"
msgstr "ne peut trouve l'espace de nom de l'hôte \"{0}\"" msgstr "Les variables suiveuses sont inaccessibles mais sont vides et obligatoires :"
#: src/rougail/output_ansible/__init__.py:70 #: src/rougail/output_exporter/output/console.py:53
#, fuzzy msgid "Undocumented variable"
msgid "malformated host namespace \"{0}\", should have the \"hostnames\" key" msgstr "Variable non documentée"
msgstr ""
"l'espace de nom de l'hôte \"{0}\" est mal formaté, devrait avoir la clé "
"\"hostnames\""
#: src/rougail/output_ansible/__init__.py:97 #: src/rougail/output_exporter/output/console.py:54
msgid "cannot find \"hostnames\" in \"{0}\" namespace" msgid "Undocumented but modified variable"
msgstr "ne peut trouve \"hostnames\" dans l'espace de nom \"{0}\"" msgstr "Variable non documentée mais modifiée"
#: src/rougail/output_ansible/config.py:29 #: src/rougail/output_exporter/output/console.py:57
#: src/rougail/output_ansible/config.py:30 msgid "Unmodifiable variable"
msgid "parameter added only to be compatible with Ansible" msgstr "Variable non modifiable"
msgstr "paramètre ajouté seulement pour être compatible avec Ansible"
#: src/rougail/output_ansible/config.py:52 #: src/rougail/output_exporter/output/console.py:61
msgid "Configuration of user data or output Ansible" msgid "Default value"
msgstr "Configuration de Ansible comme donnée utilisateur ou sortie" msgstr "Valeur par défaut"
#: src/rougail/output_ansible/config.py:62 #: src/rougail/output_exporter/output/console.py:62
msgid "Configuration of output Ansible" msgid "Modified value"
msgstr "Configuration de la sortie Ansible" msgstr "Valeur modifiée"
#: src/rougail/output_ansible/config.py:72 #: src/rougail/output_exporter/output/console.py:63
msgid "Namespace with host values" msgid "Original default value"
msgstr "Espace de nom avec les valeurs de l'hôte" msgstr "Valeur par défaut d'origine"
#: src/rougail/output_ansible/config.py:76 #: src/rougail/output_exporter/output/console.py:67
msgid "Only variables in host namespace is available by a host" msgid "Caption"
msgstr "" msgstr "Légende"
"Seules les variables de l'espace de nom de l'hôte est valable pour un hôte"
#: src/rougail/output_ansible/config.py:77 #: src/rougail/output_exporter/output/console.py:92
msgid "All variables is available for all hosts" msgid "Variables:"
msgstr "Tous les variables sont valables pour tous les hôtes" msgstr "Variables :"
#~ msgid "The following variables are mandatory but have no value:"
#~ msgstr "Les variables suivantes sont obligatoire mais n'ont pas de valeur :"
#~ msgid ""
#~ "The following variables are inaccessible but are empty and mandatory :"
#~ msgstr ""
#~ "Les variables suiveuses sont inaccessibles mais sont vides et "
#~ "obligatoires :"
#~ msgid "Undocumented variable"
#~ msgstr "Variable non documentée"
#~ msgid "Undocumented but modified variable"
#~ msgstr "Variable non documentée mais modifiée"
#~ msgid "Unmodifiable variable"
#~ msgstr "Variable non modifiable"
#~ msgid "Default value"
#~ msgstr "Valeur par défaut"
#~ msgid "Modified value"
#~ msgstr "Valeur modifiée"
#~ msgid "Original default value"
#~ msgstr "Valeur par défaut d'origine"
#~ msgid "Caption"
#~ msgstr "Légende"
#~ msgid "Variables:"
#~ msgstr "Variables :"

View file

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2025-05-12 08:39+0200\n" "POT-Creation-Date: 2024-11-01 11:03+0100\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"
@ -15,39 +15,43 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
#: src/rougail/output_ansible/__init__.py:58 #: src/rougail/output_exporter/__init__.py:73
msgid "no namespace configured" msgid "The following variables are mandatory but have no value:"
msgstr "" msgstr ""
#: src/rougail/output_ansible/__init__.py:67 #: src/rougail/output_exporter/__init__.py:84
msgid "cannot find host namespace \"{0}\"" msgid "The following variables are inaccessible but are empty and mandatory :"
msgstr "" msgstr ""
#: src/rougail/output_ansible/__init__.py:74 #: src/rougail/output_exporter/output/console.py:53
msgid "malformated host namespace \"{0}\", should have the \"hostnames\" key" msgid "Undocumented variable"
msgstr "" msgstr ""
#: src/rougail/output_ansible/__init__.py:111 #: src/rougail/output_exporter/output/console.py:54
msgid "cannot find \"hostnames\" in \"{0}\" namespace" msgid "Undocumented but modified variable"
msgstr "" msgstr ""
#: src/rougail/output_ansible/config.py:30 #: src/rougail/output_exporter/output/console.py:57
msgid "parameter added only to be compatible with Ansible" msgid "Unmodifiable variable"
msgstr "" msgstr ""
#: src/rougail/output_ansible/config.py:53 #: src/rougail/output_exporter/output/console.py:61
msgid "Configuration of user data or output Ansible" msgid "Default value"
msgstr "" msgstr ""
#: src/rougail/output_ansible/config.py:64 #: src/rougail/output_exporter/output/console.py:62
msgid "Configuration of output Ansible" msgid "Modified value"
msgstr "" msgstr ""
#: src/rougail/output_ansible/config.py:76 #: src/rougail/output_exporter/output/console.py:63
msgid "Namespace with host values" msgid "Original default value"
msgstr "" msgstr ""
#: src/rougail/output_ansible/config.py:80 #: src/rougail/output_exporter/output/console.py:67
msgid "Only variables in host namespace is available by a host" msgid "Caption"
msgstr ""
#: src/rougail/output_exporter/output/console.py:92
msgid "Variables:"
msgstr "" msgstr ""

View file

@ -4,7 +4,7 @@ requires = ["flit_core >=3.8.0,<4"]
[project] [project]
name = "rougail.output_ansible" name = "rougail.output_ansible"
version = "0.2.0a9" version = "0.1.0"
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"
@ -18,8 +18,6 @@ classifiers = [
"Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3", "Programming Language :: Python :: 3",
"Operating System :: OS Independent", "Operating System :: OS Independent",
"Natural Language :: English", "Natural Language :: English",
@ -39,9 +37,5 @@ name = "cz_conventional_commits"
tag_format = "$version" tag_format = "$version"
version_scheme = "pep440" version_scheme = "pep440"
version_provider = "pep621" version_provider = "pep621"
version_files = [
"src/rougail/output_ansible/__version__.py",
"pyproject.toml:version"
]
update_changelog_on_bump = true update_changelog_on_bump = true
changelog_merge_prerelease = true changelog_merge_prerelease = true

View file

@ -1,6 +1,6 @@
""" """
Silique (https://www.silique.fr) Silique (https://www.silique.fr)
Copyright (C) 2022-2025 Copyright (C) 2022-2024
This program is free software: you can redistribute it and/or modify it This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the under the terms of the GNU Lesser General Public License as published by the
@ -19,140 +19,63 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
from typing import Optional from typing import Optional
from json import dumps from json import dumps
from tiramisu import groups
from rougail.tiramisu import normalize_family
from .i18n import _
from .__version__ import __version__
from ..output_json import RougailOutputJson from ..output_json import RougailOutputJson
class RougailOutputAnsible(RougailOutputJson): class RougailOutputAnsible(RougailOutputJson):
output_name = "ansible"
def __init__( def __init__(
self, self,
config: "Config", config: "Config",
*,
rougailconfig: "RougailConfig" = None, rougailconfig: "RougailConfig" = None,
**kwargs, user_data_errors: Optional[list] = None,
user_data_warnings: Optional[list] = None,
) -> None: ) -> None:
super().__init__(config, rougailconfig=rougailconfig, **kwargs) if rougailconfig is None:
try: from rougail import RougailConfig
groups.namespace
self.support_namespace = True rougailconfig = RougailConfig
except AttributeError: self.rougailconfig = rougailconfig
self.support_namespace = False
self.host_namespace = self.rougailconfig["ansible.host_namespace"] self.host_namespace = self.rougailconfig["ansible.host_namespace"]
self.namespace_is_hostname = self.rougailconfig["ansible.namespace_is_hostname"] self.config = config
self.read_write = False
self.is_mandatory = True
self.dico = {}
self.errors = []
self.warnings = []
def exporter(self) -> None: def run(self) -> None:
super().exporter() self.exporter()
self.json_to_ansible() print(dumps(self.json_to_ansible(), ensure_ascii=False, indent=2))
# never return code 1, error are in the output data
return True
def manage_errors(self) -> bool:
if not super().manage_errors():
if not self.support_namespace:
self.errors.append(_("no namespace configured"))
hosts_config = self.config.option("hosts")
try:
if hosts_config.group_type() != groups.namespace:
hosts_config = None
except AttributeError:
hosts_config = None
if not hosts_config:
self.errors.append(
_('cannot find host namespace "{0}"').format(self.host_namespace)
)
else:
try:
hosts_config.option("hostnames").name()
except AttributeError:
self.errors.append(
_(
'malformated host namespace "{0}", should have the "hostnames" key'
).format(self.host_namespace)
)
return super().manage_errors()
return True
def parse_family(
self,
conf,
child,
):
if self.read_write and conf.path() == self.host_namespace:
self.config.property.read_only()
super().parse_family(conf, child)
if self.read_write and conf.path() == self.host_namespace:
self.config.property.read_write()
def json_to_ansible(self): def json_to_ansible(self):
if self.host_namespace not in self.dico:
self.errors.append(_('cannot find hosts namespace "{0}"').format(self.host_namespace))
if 'hostnames' not in self.dico[self.host_namespace]:
self.errors.append(_('malformated hosts namespace "{0}", should has "hostnames"').format(self.host_namespace))
ret = {"_meta": {"hostvars": {}}, "all": {"children": ["ungrouped"]}} ret = {"_meta": {"hostvars": {}}, "all": {"children": ["ungrouped"]}}
if "_warnings" in self.dico: # if self.errors:
ret["_meta"]["hostvars"]["localhost"] = { # ret["_meta"]["hostvars"]["localhost"] = {'_errors': self.errors}
"_warnings": self.dico.pop("_warnings") # ret["ungrouped"] = {"hosts": ["localhost"]}
} # else:
ret["ungrouped"] = {"hosts": ["localhost"]} hostnames = self.dico[self.host_namespace]['hostnames']
if "_errors" in self.dico: ret_hosts = {}
ret["_meta"]["hostvars"].setdefault("localhost", {})["_errors"] = ( for name, hosts in hostnames.items():
self.dico.pop("_errors") if 'hosts' in hosts:
) for idx, host in enumerate(hosts['hosts']):
if "ungrouped" not in ret: index = str(idx + 1)
ret["ungrouped"] = {"hosts": ["localhost"]} if idx < 9:
if self.host_namespace in self.dico: index = '0' + index
hosts = self.dico.pop(self.host_namespace) host_name = hosts['prefix_name'] + index
if "hostnames" not in hosts: ret_hosts.setdefault(name, {})[host_name] = host
ret["_meta"]["hostvars"].setdefault("localhost", {}).setdefault( ret.setdefault(name, {}).setdefault('hosts', []).append(host_name)
"_errors", []
).append(
_('cannot find "hostnames" in "{0}" namespace').format(
self.host_namespace
)
)
if "ungrouped" not in ret:
ret["ungrouped"] = {"hosts": ["localhost"]}
hostnames = {}
else: else:
hostnames = hosts["hostnames"] ret["all"]["children"].append(name)
ret_hosts = {} ret[name] = hosts
for name, hosts in hostnames.items(): for hosts in ret_hosts.values():
if "hosts" in hosts: for host, domain_name in hosts.items():
if "prefix_name" in hosts: ret['_meta']['hostvars'][host] = {'ansible_host': domain_name}
host_name = hosts["prefix_name"] ret['_meta']['hostvars'][host].update(self.dico)
add_index = True return ret
elif len(hosts["hosts"]) == 1:
host_name = hosts["hosts"][0]
add_index = False
else:
raise Exception("cannot find prefix_name")
for idx, host in enumerate(hosts["hosts"]):
index = str(idx + 1)
if idx < 9:
index = "0" + index
if "prefix_name" in hosts:
host_name = hosts["prefix_name"] + index
ret_hosts.setdefault(name, {})[host_name] = host
ret.setdefault(name, {}).setdefault("hosts", []).append(
host_name
)
else:
ret["all"]["children"].append(name)
ret[name] = hosts
for hosts in ret_hosts.values():
for host, domain_name in hosts.items():
ret["_meta"]["hostvars"][host] = {"ansible_host": domain_name}
if self.namespace_is_hostname:
host_namespace = normalize_family(host)
if host_namespace in self.dico:
ret["_meta"]["hostvars"][host].update(
self.dico[host_namespace]
)
else:
ret["_meta"]["hostvars"][host].update(self.dico)
self.dico = ret
RougailOutput = RougailOutputAnsible RougailOutput = RougailOutputAnsible

View file

@ -1 +0,0 @@
__version__ = "0.2.0a9"

View file

@ -1,6 +1,6 @@
""" """
Silique (https://www.silique.fr) Silique (https://www.silique.fr)
Copyright (C) 2024-2025 Copyright (C) 2024
This program is free software: you can redistribute it and/or modify it This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the under the terms of the GNU Lesser General Public License as published by the
@ -16,7 +16,6 @@ You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. along with this program. If not, see <http://www.gnu.org/licenses/>.
""" """
from .i18n import _
from pathlib import Path from pathlib import Path
@ -24,63 +23,26 @@ def get_rougail_config(
*, *,
backward_compatibility=True, backward_compatibility=True,
) -> dict: ) -> dict:
options = [ options = """
f""" ansible:
list: description: Configuration of output Ansible
description: {_('parameter added only to be compatible with Ansible')}
default: false
disabled: disabled:
type: jinja type: jinja
jinja: | jinja: |
{{% if step.output is propertyerror or step.output != 'ansible' %}} {% if step.output != 'ansible' %}
disabled disabled
{{% endif %}} {% endif %}
json:
redefine: true
disabled:
type: jinja
jinja: |
{{% if step.output is propertyerror or (step.output != 'json' and step.output != 'ansible') %}}
disabled
{{% endif %}}
""",
f"""
ansible:
exists: true
redefine: true
description: {_('Configuration of user data or output Ansible')}
disabled:
type: jinja
jinja: |
{{% if step.output is propertyerror or (step.output != 'ansible' and (step.user_data is propertyerror or 'ansible' not in step.user_data)) %}}
disabled
{{% endif %}}
""",
f"""
ansible:
description: {_('Configuration of output Ansible')}
exists: false
disabled:
variable: step.output
when_not: ansible
propertyerror: false
""",
f"""
ansible:
host_namespace: host_namespace:
description: {_('Namespace with host values')} description: Namespace with host values
default: "hosts" default: "hosts"
disabled:
namespace_is_hostname: type: jinja
description: {_('Only variables in host namespace is available by a host')} jinja: |
default: false {% if step.output != 'ansible' %}
""", disabled
] {% endif %}
"""
return { return {
"name": "ansible", "name": "ansible",
"process": "output", "process": "output",

View file

@ -1,6 +1,6 @@
"""Internationalisation utilities """Internationalisation utilities
Silique (https://www.silique.fr) Silique (https://www.silique.fr)
Copyright (C) 2024-2025 Copyright (C) 2024
This program is free software: you can redistribute it and/or modify it This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the under the terms of the GNU Lesser General Public License as published by the
@ -19,8 +19,6 @@ 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( t = translation("rougail_output_ansible", str(Path(__file__).parent / "locale"), fallback=True)
"rougail_output_ansible", str(Path(__file__).parent / "locale"), fallback=True
)
_ = t.gettext _ = t.gettext

View file

@ -1,27 +0,0 @@
---
version: "1.1"
hostnames:
hidden: true
group1:
hosts:
type: domainname
multi: true
default:
- group1.net
prefix_name:
default: GROUP1_
group2:
hosts:
type: domainname
multi: true
default:
- group2.net
prefix_name:
default: GROUP2_

View file

@ -1,11 +0,0 @@
---
version: "1.1"
hostnames:
groups:
children:
multi: true
default:
- group1
- group2

View file

@ -1,34 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net"
},
"GROUP2_01": {
"ansible_host": "group2.net"
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,36 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,36 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,36 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"version": "string1"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"version": "string1"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"empty": "string1"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"empty": "string1"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,46 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": "no",
"var2": [
"no"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": "no",
"var2": [
"no"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,58 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": [
"no",
"yes",
"maybe"
],
"var2": [
"no",
"yes",
"maybe"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": [
"no",
"yes",
"maybe"
],
"var2": [
"no",
"yes",
"maybe"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,52 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,44 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,54 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": [
"domain1.lan",
"domain2.lan"
],
"var2": [
"domain1.lan",
"domain2.lan"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": [
"domain1.lan",
"domain2.lan"
],
"var2": [
"domain1.lan",
"domain2.lan"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"without_type": "non"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"without_type": "non"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,50 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": true,
"var2": true,
"var3": true,
"var4": false,
"var5": false,
"var6": false
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": true,
"var2": true,
"var3": true,
"var4": false,
"var5": false,
"var6": false
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": true
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": true
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,50 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": "a",
"var2": "a",
"var3": null,
"var4": null,
"var5": "a",
"var6": 1
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": "a",
"var2": "a",
"var3": null,
"var4": null,
"var5": "a",
"var6": 1
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var": 9
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var": 9
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": "a",
"var2": "a"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": "a",
"var2": "a"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,50 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": [
"a",
"b",
"c"
],
"var2": "a"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": [
"a",
"b",
"c"
],
"var2": "a"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,52 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": [
"a",
"b",
"c"
],
"var2": "a",
"var3": "a"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": [
"a",
"b",
"c"
],
"var2": "a",
"var3": "a"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,56 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": [
"a",
"b",
"c"
],
"var2": "a",
"family": {
"var3": "a"
}
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": [
"a",
"b",
"c"
],
"var2": "a",
"family": {
"var3": "a"
}
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"custom1": "string1",
"custom2": "value"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"custom1": "string1",
"custom2": "value"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "my.domain.name"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "my.domain.name"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "my.domain.name"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "my.domain.name"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,50 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": 0.0,
"var2": 0.0,
"var3": 0.0,
"var4": 10.1,
"var5": 10.1,
"var6": 10.1
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": 0.0,
"var2": 0.0,
"var3": 0.0,
"var4": 10.1,
"var5": 10.1,
"var6": 10.1
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,50 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": 0,
"var2": 0,
"var3": 0,
"var4": 10,
"var5": 10,
"var6": 10
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": 0,
"var2": 0,
"var3": 0,
"var4": 10,
"var5": 10,
"var6": 10
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,44 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable1": "80",
"variable2": "8080",
"variable3": "8080"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable1": "80",
"variable2": "8080",
"variable3": "8080"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var": "#a1a1a1"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var": "#a1a1a1"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": "#a1a1a1",
"var2": "#a1a1a1"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": "#a1a1a1",
"var2": "#a1a1a1"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"secret1": "onE7vaLues_len1",
"secret2": "value"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"secret1": "onE7vaLues_len1",
"secret2": "value"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,44 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"secret1": "onE7vaLues_len1",
"secret2": "value",
"secret3": "value"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"secret1": "onE7vaLues_len1",
"secret2": "value",
"secret3": "value"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,50 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": "string1",
"var2": "string1",
"var3": "string1",
"var4": "value",
"var5": "value",
"var6": "value"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": "string1",
"var2": "string1",
"var3": "string1",
"var4": "value",
"var5": "value",
"var6": "value"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var": "quote'"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var": "quote'"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "quote\""
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "quote\""
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "quote'\""
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "quote'\""
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "quote\\\"\\'"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "quote\\\"\\'"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "quote'"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "quote'"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "string1"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "string1"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "Rougail"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "Rougail"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "Rougail"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "Rougail"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,56 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": "test",
"var2": "value",
"var3": "test1",
"var4": null,
"var5": true,
"var6": [
"test1",
"test2"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": "test",
"var2": "value",
"var3": "test1",
"var4": null,
"var5": true,
"var6": [
"test1",
"test2"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,48 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable1": [
"val1",
"val2"
],
"variable2": []
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable1": [
"val1",
"val2"
],
"variable2": []
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,44 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"source_variable_1": "val1",
"source_variable_2": "val2",
"my_variable": "val1"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"source_variable_1": "val1",
"source_variable_2": "val2",
"my_variable": "val1"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "string_1_True_None"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "string_1_True_None"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var": "string1"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var": "string1"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,46 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"my_variable": "val1",
"my_calculated_variable": [
"val1"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"my_variable": "val1",
"my_calculated_variable": [
"val1"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,46 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"my_variable": "val1",
"my_calculated_variable": [
"val1"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"my_variable": "val1",
"my_calculated_variable": [
"val1"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,48 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"my_calculated_variable": [
"string1",
"string2",
"string3"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"my_calculated_variable": [
"string1",
"string2",
"string3"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,54 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"my_variable": [
"val1",
"val2"
],
"my_calculated_variable": [
"val1",
"val2"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"my_variable": [
"val1",
"val2"
],
"my_calculated_variable": [
"val1",
"val2"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": "no",
"var2": "no"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": "no",
"var2": "no"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var": 9
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var": 9
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,46 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "rougail"
},
"extra": {
"variable": "no"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "rougail"
},
"extra": {
"variable": "no"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,50 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "value"
},
"extra": {
"variable1": "value",
"variable2": "value",
"variable3": "value"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "value"
},
"extra": {
"variable1": "value",
"variable2": "value",
"variable3": "value"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,46 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "value in extra"
},
"extra": {
"variable": "value in extra"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "value in extra"
},
"extra": {
"variable": "value in extra"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,86 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": [
true
],
"var2": [
true
],
"var3": [
true
],
"var4": [
false
],
"var5": [
false
],
"var6": [
false
],
"var7": [
true
],
"var8": [
true
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": [
true
],
"var2": [
true
],
"var3": [
true
],
"var4": [
false
],
"var5": [
false
],
"var6": [
false
],
"var7": [
true
],
"var8": [
true
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,54 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"custom1": [
"string1",
"string2",
"string3"
],
"custom2": [
"value"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"custom1": [
"string1",
"string2",
"string3"
],
"custom2": [
"value"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,86 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": [
0.0
],
"var2": [
0.0
],
"var3": [
0.0
],
"var4": [
10.1
],
"var5": [
10.1
],
"var6": [
10.1
],
"var7": [
0.0
],
"var8": [
0.0
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": [
0.0
],
"var2": [
0.0
],
"var3": [
0.0
],
"var4": [
10.1
],
"var5": [
10.1
],
"var6": [
10.1
],
"var7": [
0.0
],
"var8": [
0.0
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,86 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": [
0
],
"var2": [
0
],
"var3": [
0
],
"var4": [
10
],
"var5": [
10
],
"var6": [
10
],
"var7": [
0
],
"var8": [
0
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": [
0
],
"var2": [
0
],
"var3": [
0
],
"var4": [
10
],
"var5": [
10
],
"var6": [
10
],
"var7": [
0
],
"var8": [
0
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,48 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": [
"string1",
"string2",
"string3"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": [
"string1",
"string2",
"string3"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,98 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": [
"string1",
"string2",
"string3"
],
"var2": [
"string1",
"string2",
"string3"
],
"var3": [
"string1",
"string2",
"string3"
],
"var4": [
"value"
],
"var5": [
"value"
],
"var6": [
"value"
],
"var7": [
"value"
],
"var8": [
"value"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": [
"string1",
"string2",
"string3"
],
"var2": [
"string1",
"string2",
"string3"
],
"var3": [
"string1",
"string2",
"string3"
],
"var4": [
"value"
],
"var5": [
"value"
],
"var6": [
"value"
],
"var7": [
"value"
],
"var8": [
"value"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,44 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": [
"quote\""
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": [
"quote\""
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,44 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": [
"quote'\""
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": [
"quote'\""
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,44 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": [
"quote'"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": [
"quote'"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,48 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": [
"string1",
"string2",
"string3"
]
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": [
"string1",
"string2",
"string3"
]
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,50 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable1": [
"a",
"b",
"c"
],
"variable2": "a"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable1": [
"a",
"b",
"c"
],
"variable2": "a"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"int": 10
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"int": 10
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"variable": "no"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"variable": "no"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": "no",
"var2": "no"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": "no",
"var2": "no"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var1": "no",
"var2": "yes"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var1": "no",
"var2": "yes"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,40 +0,0 @@
{
"_meta": {
"hostvars": {
"GROUP1_01": {
"ansible_host": "group1.net",
"rougail": {
"var": "yes"
}
},
"GROUP2_01": {
"ansible_host": "group2.net",
"rougail": {
"var": "yes"
}
}
}
},
"all": {
"children": [
"ungrouped",
"groups"
]
},
"group1": {
"hosts": [
"GROUP1_01"
]
},
"group2": {
"hosts": [
"GROUP2_01"
]
},
"groups": {
"children": [
"group1",
"group2"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,44 +0,0 @@
{
"_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"
]
}
}

View file

@ -1,42 +0,0 @@
{
"_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"
]
}
}

Some files were not shown because too many files have changed in this diff Show more