Compare commits

..

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

1262 changed files with 3758 additions and 10834 deletions

View file

@ -1,76 +1,3 @@
## 0.2.0a9 (2025-05-12)
### Fix
- black
- update translation
- load file with order
## 0.2.0a8 (2025-05-02)
### Fix
- do not force use_data usage
## 0.2.0a7 (2025-04-30)
### Fix
- update tests
## 0.2.0a6 (2025-04-09)
### Fix
- version
## 0.2.0a5 (2025-04-09)
### Fix
- better error message
## 0.2.0a4 (2025-04-01)
### Fix
- update tests
## 0.2.0a3 (2025-03-30)
### Fix
- i18n
## 0.2.0a2 (2025-03-30)
### Fix
- update tests
- update tests, some errors are now in warnings level
## 0.2.0a1 (2025-02-10)
### Feat
- add new parameter yaml.file_with_secrets
### Fix
- update tests
## 0.2.0a0 (2024-12-11)
### Feat
- rename file to yaml
### Fix
- prepare ansible user data
## 0.1.0 (2024-11-06)
## 0.1.0rc1 (2024-11-06) ## 0.1.0rc1 (2024-11-06)
### Fix ### Fix

View file

@ -1,2 +1,2 @@
# rougail-user-data-file # rougail-user-data

View file

@ -1,47 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR ORGANIZATION
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: 2025-05-11 10:23+0200\n"
"PO-Revision-Date: 2025-05-11 10:23+0200\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: pygettext.py 1.5\n"
"X-Generator: Poedit 3.5\n"
#: src/rougail/user_data_yaml/__init__.py:43
msgid "yaml is not set in step.user_data"
msgstr "\"yaml\" n'est pas défini dans step.user_data"
#: src/rougail/user_data_yaml/__init__.py:63
msgid "cannot load \"{0}\", the root value is not a dict but \"{1}\""
msgstr ""
"ne peut charger \"{0}\", la valeur racine n'est pas une dictionnaire mais "
"\"{1}\""
#: src/rougail/user_data_yaml/__init__.py:86
msgid "the YAML file \"{0}\""
msgstr "le fichier YAML \"{0}\""
#: src/rougail/user_data_yaml/__init__.py:117
msgid "\"{0}\" in {1} has an unknown value"
msgstr "\"{0}\" dans {1} a une valeur inconnue"
#: src/rougail/user_data_yaml/config.py:29
msgid "Configuration rougail-user-data-yaml"
msgstr "Configuration de rougail-user-data-yaml"
#: src/rougail/user_data_yaml/config.py:38
msgid "Filename"
msgstr "Nom du fichier"
#: src/rougail/user_data_yaml/config.py:49
msgid "File that may contain secrets"
msgstr "Le fichier peut contenir des secrets"

Binary file not shown.

View file

@ -0,0 +1,35 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR ORGANIZATION
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: 2024-11-01 12:12+0100\n"
"PO-Revision-Date: 2024-11-01 12:13+0100\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: pygettext.py 1.5\n"
"X-Generator: Poedit 3.5\n"
#: src/rougail/user_data_file/__init__.py:40
msgid "file is not set in step.user_data"
msgstr "\"file\" n'est pas défini dans step.user_data"
#: src/rougail/user_data_file/__init__.py:58
msgid "cannot load \"{0}\", the root value is not a dict but \"{1}\""
msgstr ""
"ne peut charger \"{0}\", la valeur racine n'est pas une dictionnaire mais "
"\"{1}\""
#: src/rougail/user_data_file/__init__.py:66
msgid "file ({0})"
msgstr "fichier ({0})"
#: src/rougail/user_data_file/__init__.py:88
msgid "\"{0}\" in {1} has an unknown value"
msgstr "\"{0}\" dans {1} a une valeur inconnue"

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 12:13+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,31 +15,19 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
#: src/rougail/user_data_yaml/__init__.py:45 #: src/rougail/user_data_file/__init__.py:40
msgid "yaml is not set in step.user_data" msgid "file is not set in step.user_data"
msgstr "" msgstr ""
#: src/rougail/user_data_yaml/__init__.py:65 #: src/rougail/user_data_file/__init__.py:58
msgid "cannot load \"{0}\", the root value is not a dict but \"{1}\"" msgid "cannot load \"{0}\", the root value is not a dict but \"{1}\""
msgstr "" msgstr ""
#: src/rougail/user_data_yaml/__init__.py:88 #: src/rougail/user_data_file/__init__.py:66
msgid "the YAML file \"{0}\"" msgid "file ({0})"
msgstr "" msgstr ""
#: src/rougail/user_data_yaml/__init__.py:120 #: src/rougail/user_data_file/__init__.py:88
msgid "\"{0}\" in {1} has an unknown value" msgid "\"{0}\" in {1} has an unknown value"
msgstr "" msgstr ""
#: src/rougail/user_data_yaml/config.py:30
msgid "Configuration rougail-user-data-yaml"
msgstr ""
#: src/rougail/user_data_yaml/config.py:39
msgid "Filename"
msgstr ""
#: src/rougail/user_data_yaml/config.py:50
msgid "File that may contain secrets"
msgstr ""

View file

@ -3,11 +3,11 @@ build-backend = "flit_core.buildapi"
requires = ["flit_core >=3.8.0,<4"] requires = ["flit_core >=3.8.0,<4"]
[project] [project]
name = "rougail.user_data_yaml" name = "rougail.user_data_file"
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 user_data yaml" description = "Rougail user_data file"
requires-python = ">=3.8" requires-python = ">=3.8"
license = {file = "LICENSE"} license = {file = "LICENSE"}
classifiers = [ classifiers = [
@ -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",
@ -31,16 +29,12 @@ dependencies = [
] ]
[project.urls] [project.urls]
Home = "https://forge.cloud.silique.fr/stove/rougail-user-data-yaml" Home = "https://forge.cloud.silique.fr/stove/rougail-user-data-file"
[tool.commitizen] [tool.commitizen]
name = "cz_conventional_commits" name = "cz_conventional_commits"
tag_format = "$version" tag_format = "$version"
version_scheme = "pep440" version_scheme = "pep440"
version_provider = "pep621" version_provider = "pep621"
version_files = [ #update_changelog_on_bump = true
"src/rougail/user_data_yaml/__version__.py",
"pyproject.toml:version"
]
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) 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,16 +16,14 @@ 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 rougail import RougailConfig
from ruamel.yaml import YAML from ruamel.yaml import YAML
from rougail.error import ExtentionError
from tiramisu.error import ValueOptionError, PropertiesOptionError, LeadershipError from tiramisu.error import ValueOptionError, PropertiesOptionError, LeadershipError
from .i18n import _ from .i18n import _
from .__version__ import __version__
class RougailUserDataYaml: class RougailUserDataFile:
def __init__( def __init__(
self, self,
config, config,
@ -33,19 +31,17 @@ class RougailUserDataYaml:
rougailconfig=None, rougailconfig=None,
) -> None: ) -> None:
if rougailconfig is None: if rougailconfig is None:
from rougail import RougailConfig
rougailconfig = RougailConfig rougailconfig = RougailConfig
user_data = rougailconfig["step.user_data"] user_data = rougailconfig["step.user_data"]
if "yaml" not in user_data: if "file" not in user_data:
user_data.append("yaml") user_data.append("file")
rougailconfig["step.user_data"] = user_data rougailconfig["step.user_data"] = user_data
user_data = rougailconfig["step.user_data"] user_data = rougailconfig["step.user_data"]
if "yaml" not in user_data: if "file" not in user_data:
raise ExtentionError(_("yaml is not set in step.user_data")) raise Exception(_("file is not set in step.user_data"))
self.rougailconfig = rougailconfig self.rougailconfig = rougailconfig
self.filenames = self.rougailconfig["yaml.filename"] self.filenames = self.rougailconfig["file.filename"]
self.file_with_secrets = self.rougailconfig["yaml.file_with_secrets"] self.yaml = YAML()
self.config = config self.config = config
self.errors = [] self.errors = []
self.warnings = [] self.warnings = []
@ -53,53 +49,36 @@ class RougailUserDataYaml:
def run( def run(
self, self,
) -> None: ) -> None:
self.yaml = YAML()
user_datas = [] user_datas = []
for idx, filename in enumerate(self.filenames): for filename in self.filenames:
file_values = self.open(filename) with open(filename) as fh_config:
file_values = self.yaml.load(fh_config)
if not file_values: if not file_values:
continue continue
values = {}
if not isinstance(file_values, dict): if not isinstance(file_values, dict):
self.errors.append( self.errors.append(
_( _(
'cannot load "{0}", the root value is not a dict but "{1}"' 'cannot load "{0}", the root value is not a dict but "{1}"'
).format(filename, file_values) ).format(filename, file_values)
) )
else: continue
self.parse( values = {}
values, self.parse(
"", values,
file_values, "",
filename, file_values,
) filename,
if self.file_with_secrets == "none": )
allow_secrets_variables = False
elif self.file_with_secrets == "first":
allow_secrets_variables = idx == 0
elif self.file_with_secrets == "last":
if not idx:
last_filenames = len(self.filenames) - 1
allow_secrets_variables = idx == last_filenames
else:
allow_secrets_variables = True
user_datas.append( user_datas.append(
{ {
"source": _('the YAML file "{0}"').format(filename), "source": _("file ({0})").format(filename),
"errors": self.errors, "errors": self.errors,
"warnings": self.warnings, "warnings": self.warnings,
"values": values, "values": values,
"options": {
"allow_secrets_variables": allow_secrets_variables,
},
} }
) )
return user_datas return user_datas
def open(self, filename: str) -> dict:
with open(filename) as fh_config:
return self.yaml.load(fh_config)
def parse( def parse(
self, self,
values: dict, values: dict,
@ -113,7 +92,7 @@ class RougailUserDataYaml:
self.parse(values, path + ".", value, filename) self.parse(values, path + ".", value, filename)
elif isinstance(value, list) and value and isinstance(value[0], dict): elif isinstance(value, list) and value and isinstance(value[0], dict):
# it's a leadership # it's a leadership
keys = [] keys = set()
for val in value: for val in value:
if not isinstance(val, dict): if not isinstance(val, dict):
self.errors.append( self.errors.append(
@ -122,9 +101,7 @@ class RougailUserDataYaml:
) )
) )
break break
for v in val: keys |= set(val)
if v not in keys:
keys.append(v)
else: else:
for val in value: for val in value:
for key in keys: for key in keys:
@ -136,7 +113,7 @@ class RougailUserDataYaml:
values[path] = value values[path] = value
RougailUserData = RougailUserDataYaml RougailUserData = RougailUserDataFile
__all__ = ("RougailUserDataYaml",) __all__ = ("RougailUserDataFile",)

View file

@ -1,8 +1,8 @@
""" """
Config yaml for Rougail-user-data Config file for Rougail-user-data
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
@ -18,25 +18,22 @@ 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 _
def get_rougail_config( def get_rougail_config(
*, *,
backward_compatibility=True, backward_compatibility=True,
) -> dict: ) -> dict:
options = f""" options = """
yaml: file:
description: {_("Configuration rougail-user-data-yaml")} description: Configuration rougail-user-data-file
disabled: disabled:
type: jinja type: jinja
jinja: | jinja: |
{{% if step.user_data is propertyerror or 'yaml' not in step.user_data %}} {% if 'file' not in step.user_data %}
disabled disabled
{{% endif %}} {% endif %}
filename: filename:
description: {_("Filename")} description: Filename with user data
alternative_name: ff alternative_name: ff
type: unix_filename type: unix_filename
multi: true multi: true
@ -45,18 +42,9 @@ yaml:
test_existence: True test_existence: True
types: types:
- file - file
file_with_secrets:
description: {_("File that may contain secrets")}
default: all
choices:
- all
- first
- last
- none
""" """
return { return {
"name": "yaml", "name": "file",
"process": "user data", "process": "user data",
"options": options, "options": options,
"level": 50, "level": 50,

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
@ -20,7 +20,7 @@ from gettext import translation
from pathlib import Path from pathlib import Path
t = translation( t = translation(
"rougail_user_data_yaml", str(Path(__file__).parent / "locale"), fallback=True "rougail_user_data_file", str(Path(__file__).parent / "locale"), fallback=True
) )
_ = t.gettext _ = t.gettext

View file

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

View file

@ -1,5 +0,0 @@
{
"dynVal1": {
"var": "string1"
}
}

View file

@ -1,10 +0,0 @@
---
version: '1.1'
var: [] # A suffix variable
"dyn{{ identifier }}":
description: A dynamic family
dynamic:
variable: _.var
var: # A dynamic variable

View file

@ -1,5 +0,0 @@
{
"dynVal1": {
"var": "string1"
}
}

View file

@ -1,12 +0,0 @@
---
version: '1.1'
var: #A suffix variable
mandatory: false
default: []
"dyn{{ identifier }}":
description: A dynamic family
dynamic:
variable: _.var
var: # A dynamic variable

View file

@ -1,6 +0,0 @@
{
"errors": [],
"warnings": [
"variable or family \"unknown\" does not exist, it will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/00_unknown_variable.yaml\""
]
}

View file

@ -1,7 +0,0 @@
{
"errors": [],
"warnings": [
"family \"family_disabled\" is disabled, \"family_disabled.variable1\" will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/01_disabled_family.yaml\"",
"family \"family_disabled\" is disabled, \"family_disabled.variable2\" will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/01_disabled_family.yaml\""
]
}

View file

@ -1,6 +0,0 @@
{
"errors": [],
"warnings": [
"variable \"variable_disabled\" is disabled, it will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/01_disabled_variable.yaml\""
]
}

View file

@ -1,6 +0,0 @@
{
"errors": [],
"warnings": [
"the value \"test\" is invalid for \"variable_int\", which is not an integer, it will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/01_wrong_type.yaml\""
]
}

View file

@ -1,6 +0,0 @@
{
"errors": [],
"warnings": [
"family \"family_disabled_hidden\" is disabled and hidden, \"family_disabled_hidden.variable1\" will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/02_disabled_hidden_family.yaml\""
]
}

View file

@ -1,6 +0,0 @@
{
"errors": [],
"warnings": [
"the value \"**********\" is invalid for \"secret\", at least 10 characters are required, it will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/04_value_secret.yaml\""
]
}

View file

@ -1,6 +0,0 @@
{
"errors": [],
"warnings": [
"cannot set the value \"test\" to the family \"family\", it will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/05_value_family.yaml\""
]
}

View file

@ -1,6 +0,0 @@
{
"errors": [],
"warnings": [
"variable or family \"dyn_unknown\" does not exist, it will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/06_dynamic_unknown.yaml\""
]
}

View file

@ -1,9 +0,0 @@
{
"errors": [],
"warnings": [
"variable \"leadership.follower_disabled\" at index \"0\" is disabled, it will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/07_leadership_disabled.yaml\"",
"variable \"leadership.follower_disabled\" at index \"1\" is disabled, it will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/07_leadership_disabled.yaml\"",
"variable \"leadership.follower_disabled\" at index \"2\" is disabled, it will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/07_leadership_disabled.yaml\"",
"variable \"leadership.follower_disabled_at_index\" at index \"1\" is disabled, it will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/07_leadership_disabled.yaml\""
]
}

View file

@ -1,6 +0,0 @@
{
"errors": [],
"warnings": [
"variable or family \"leadership.unknwon\" does not exist, it will be ignored when loading from the YAML file \"/home/gnunux/git/stove/rougail-user-data-yaml/tests/errors/yaml/07_leadership_unknown.yaml\""
]
}

View file

@ -1,4 +0,0 @@
{
"errors": [],
"warnings": []
}

View file

@ -1,68 +0,0 @@
%YAML 1.2
---
version: 1.1
variable:
secret:
type: secret
params:
min_len: 10
variable_disabled:
disabled: true
variable_disabled_hidden:
disabled: true
hidden: true
variable_int:
type: number
family:
variable:
family_disabled:
disabled: true
variable1:
variable2:
family_disabled_hidden:
disabled: true
hidden: true
variable1:
variable2:
dyn_{{ identifier }}:
dynamic:
- var1
- var2
variable:
leadership:
type: leadership
leader:
follower:
follower_disabled:
disabled: true
follower_disabled_at_index:
disabled:
jinja: >-
{% if index == 1 %}
true
{% else %}
{% endif %}
params:
index:
type: index
...

View file

@ -1,2 +0,0 @@
---
unknown: 1

View file

@ -1,4 +0,0 @@
---
family_disabled:
variable1: test
variable2: test

View file

@ -1,2 +0,0 @@
---
variable_disabled: test

View file

@ -1,2 +0,0 @@
---
variable_int: test

View file

@ -1,3 +0,0 @@
---
family_disabled_hidden:
variable1: test

View file

@ -1,2 +0,0 @@
---
secret: a

View file

@ -1,2 +0,0 @@
---
family: test

View file

@ -1,3 +0,0 @@
---
dyn_unknown:
variable: test

View file

@ -1,14 +0,0 @@
---
leadership:
- leader: test1
follower: test1
follower_disabled: test1
follower_disabled_at_index: test1
- leader: test2
follower: test2
follower_disabled: test2
follower_disabled_at_index: test2
- leader: test3
follower: test3
follower_disabled: test3
follower_disabled_at_index: test3

View file

@ -1,4 +0,0 @@
---
leadership:
- leader: test
unknwon: test

View file

@ -1,5 +0,0 @@
---
leadership:
- leader: test
follower: test1
- follower: test1

View file

@ -1 +1 @@
{} {}

View file

@ -1 +1 @@
{} {}

View file

@ -1 +1 @@
{} {}

View file

@ -1 +0,0 @@
{}

View file

@ -1,5 +1,2 @@
{ rougail:
"rougail": { version: string1
"version": "string1"
}
}

View file

@ -1,5 +1,2 @@
{ rougail:
"rougail": { version: string1
"version": "string1"
}
}

View file

@ -1,5 +1,2 @@
{ rougail:
"rougail": { version: string1
"version": "string1"
}
}

View file

@ -1,5 +1,2 @@
{ rougail:
"rougail": { empty: string1
"empty": "string1"
}
}

View file

@ -1,5 +1,2 @@
{ rougail:
"rougail": { empty: string1
"empty": "string1"
}
}

View file

@ -1,5 +1,2 @@
{ rougail:
"rougail": { empty: string1
"empty": "string1"
}
}

View file

@ -1,10 +1,6 @@
{ rougail:
"rougail": { var1: string1
"var1": "string1", var2:
"var2": [ - string1
"string1", - string2
"string2", - string3
"string3"
]
}
}

View file

@ -1,10 +1,6 @@
{ rougail:
"rougail": { var1: string1
"var1": "string1", var2:
"var2": [ - string1
"string1", - string2
"string2", - string3
"string3"
]
}
}

View file

@ -1,14 +1,9 @@
{ rougail:
"rougail": { var1:
"var1": [ - string1
"string1", - string2
"string2", - string3
"string3" var2:
], - string1
"var2": [ - string2
"string1", - string3
"string2",
"string3"
]
}
}

View file

@ -1,14 +1,9 @@
{ rougail:
"rougail": { var1:
"var1": [ - string1
"string1", - string2
"string2", - string3
"string3" var2:
], - string1
"var2": [ - string2
"string1", - string3
"string2",
"string3"
]
}
}

View file

@ -1,9 +0,0 @@
{
"errors": [],
"warnings": [
"family \"rougail.leadership\" is hidden, \"rougail.leadership.var1\" (a first variable) will be ignored when loading from the YAML file \"tests/results/00_2default_calculated_params_permissive/file/all.yml\"",
"family \"rougail.leadership\" is hidden, \"rougail.leadership.var2\" (a first variable) at index \"0\" will be ignored when loading from the YAML file \"tests/results/00_2default_calculated_params_permissive/file/all.yml\"",
"index \"1\" is greater than the leadership length \"1\" for option \"rougail.leadership.var2\" (a first variable) in the YAML file \"tests/results/00_2default_calculated_params_permissive/file/all.yml\"",
"index \"2\" is greater than the leadership length \"1\" for option \"rougail.leadership.var2\" (a first variable) in the YAML file \"tests/results/00_2default_calculated_params_permissive/file/all.yml\""
]
}

View file

@ -1,17 +0,0 @@
{
"rougail": {
"leadership": [
{
"var1": "string1",
"var2": "string1"
},
{
"var1": "string2"
},
{
"var1": "string3"
}
],
"var2": "string1"
}
}

View file

@ -1,17 +0,0 @@
{
"rougail": {
"leadership": [
{
"var1": "string1",
"var2": "string1"
},
{
"var1": "string2"
},
{
"var1": "string3"
}
],
"var2": "string1"
}
}

View file

@ -1,9 +0,0 @@
{
"rougail.leadership.var1": [
{
"rougail.leadership.var1": "a_value",
"rougail.leadership.var2": "a_value"
}
],
"rougail.var2": "string1"
}

View file

@ -1,9 +0,0 @@
{
"rougail.leadership.var1": [
{
"rougail.leadership.var1": "a_value",
"rougail.leadership.var2": "a_value"
}
],
"rougail.var2": "a_value"
}

View file

@ -1,4 +0,0 @@
{
"errors": [],
"warnings": []
}

View file

@ -1,6 +0,0 @@
{
"rougail": {
"var1": "string1",
"var2": "string1"
}
}

View file

@ -1,6 +0,0 @@
{
"rougail": {
"var1": "string1",
"var2": "string1"
}
}

View file

@ -1,5 +0,0 @@
{
"rougail": {
"var1": "string1"
}
}

View file

@ -1,4 +0,0 @@
{
"rougail.var1": "string1",
"rougail.var2": "string1"
}

View file

@ -1,4 +0,0 @@
{
"rougail.var1": "string1",
"rougail.var2": "string1"
}

View file

@ -1,12 +1,7 @@
{ rougail:
"rougail": { var1:
"var1": [ - domain1.lan
"domain1.lan", - domain2.lan
"domain2.lan" var2:
], - domain1.lan
"var2": [ - domain2.lan
"domain1.lan",
"domain2.lan"
]
}
}

View file

@ -1,12 +1,7 @@
{ rougail:
"rougail": { var1:
"var1": [ - domain1.lan
"domain1.lan", - domain2.lan
"domain2.lan" var2:
], - domain1.lan
"var2": [ - domain2.lan
"domain1.lan",
"domain2.lan"
]
}
}

View file

@ -1,8 +1,4 @@
{ rougail:
"rougail": { var1:
"var1": [ - domain1.lan
"domain1.lan", - domain2.lan
"domain2.lan"
]
}
}

View file

@ -1,6 +1,2 @@
{ rougail:
"rougail": { var1: string1
"var1": "string1",
"var2": "string1"
}
}

View file

@ -1,6 +1,2 @@
{ rougail:
"rougail": { var1: string1
"var1": "string1",
"var2": "string1"
}
}

View file

@ -1,6 +1,2 @@
{ rougail:
"rougail": { var1: string1
"var1": "string1",
"var2": "string1"
}
}

View file

@ -1,4 +1,3 @@
{ {
"rougail.var1": "string1", "rougail.var1": "string1"
"rougail.var2": "string1"
} }

View file

@ -1,4 +1,3 @@
{ {
"rougail.var1": "string1", "rougail.var1": "string1"
"rougail.var2": "string1"
} }

View file

@ -1,5 +1,2 @@
{ rougail:
"rougail": { without_type: string1
"without_type": "string1"
}
}

View file

@ -1,5 +1,2 @@
{ rougail:
"rougail": { without_type: string1
"without_type": "string1"
}
}

View file

@ -1,10 +1,7 @@
{ rougail:
"rougail": { var1: true
"var1": true, var2: true
"var2": true, var3: true
"var3": true, var4: true
"var4": true, var5: true
"var5": true, var6: true
"var6": true
}
}

View file

@ -1,10 +1,7 @@
{ rougail:
"rougail": { var1: true
"var1": true, var2: true
"var2": true, var3: true
"var3": true, var4: true
"var4": true, var5: true
"var5": true, var6: true
"var6": true
}
}

View file

@ -1 +1 @@
{} {}

View file

@ -1,5 +1,2 @@
{ rougail:
"rougail": { variable: true
"variable": true
}
}

View file

@ -1,5 +1,2 @@
{ rougail:
"rougail": { variable: true
"variable": true
}
}

View file

@ -1,10 +1,7 @@
{ rougail:
"rougail": { var1: a
"var1": "a", var2: a
"var2": "a", var3: a
"var3": "a", var4:
"var4": null, var5: a
"var5": "a", var6: 1
"var6": 1
}
}

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