Compare commits
No commits in common. "9c940f8b285d5e69588f0fc72b8c84110a14ccf0" and "2488cc471e95e88aeae5ae95fa04a4d9721e2882" have entirely different histories.
9c940f8b28
...
2488cc471e
13 changed files with 25 additions and 36 deletions
|
|
@ -1,11 +1,3 @@
|
||||||
## 1.2.0a21 (2025-05-02)
|
|
||||||
|
|
||||||
### Fix
|
|
||||||
|
|
||||||
- support {{ suffix }} name in 1.1 format version
|
|
||||||
- do not force use_data usage
|
|
||||||
- validators for an index
|
|
||||||
|
|
||||||
## 1.2.0a20 (2025-04-30)
|
## 1.2.0a20 (2025-04-30)
|
||||||
|
|
||||||
### Fix
|
### Fix
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ requires = ["flit_core >=3.8.0,<4"]
|
||||||
|
|
||||||
[project]
|
[project]
|
||||||
name = "rougail"
|
name = "rougail"
|
||||||
version = "1.2.0a21"
|
version = "1.2.0a20"
|
||||||
authors = [{name = "Emmanuel Garette", email = "gnunux@gnunux.info"}]
|
authors = [{name = "Emmanuel Garette", email = "gnunux@gnunux.info"}]
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
description = "A consistency handling system that was initially designed in the configuration management"
|
description = "A consistency handling system that was initially designed in the configuration management"
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
__version__ = "1.2.0a21"
|
__version__ = "1.2.0a20"
|
||||||
|
|
|
||||||
|
|
@ -421,7 +421,7 @@ secret_manager:
|
||||||
]
|
]
|
||||||
if hidden_outputs:
|
if hidden_outputs:
|
||||||
rougail_process += """
|
rougail_process += """
|
||||||
disabled:
|
hidden:
|
||||||
type: jinja
|
type: jinja
|
||||||
jinja: |
|
jinja: |
|
||||||
"""
|
"""
|
||||||
|
|
@ -470,7 +470,6 @@ default_params:
|
||||||
mandatory: false
|
mandatory: false
|
||||||
default: {value}
|
default: {value}
|
||||||
"""
|
"""
|
||||||
# print(rougail_process)
|
|
||||||
rougail_options += rougail_process
|
rougail_options += rougail_process
|
||||||
convert = FakeRougailConvert(add_extra_options)
|
convert = FakeRougailConvert(add_extra_options)
|
||||||
convert.init()
|
convert.init()
|
||||||
|
|
|
||||||
|
|
@ -464,7 +464,7 @@ class ParserVariable:
|
||||||
if obj_type == "dynamic":
|
if obj_type == "dynamic":
|
||||||
family_is_dynamic = True
|
family_is_dynamic = True
|
||||||
if "{{ identifier }}" not in name:
|
if "{{ identifier }}" not in name:
|
||||||
if "{{ suffix }}" in name:
|
if version == "1.0" and "{{ suffix }}" in name:
|
||||||
name = name.replace("{{ suffix }}", "{{ identifier }}")
|
name = name.replace("{{ suffix }}", "{{ identifier }}")
|
||||||
path = path.replace("{{ suffix }}", "{{ identifier }}")
|
path = path.replace("{{ suffix }}", "{{ identifier }}")
|
||||||
elif "variable" in family_obj:
|
elif "variable" in family_obj:
|
||||||
|
|
@ -841,8 +841,6 @@ class ParserVariable:
|
||||||
parent_dynamic: Optional[str],
|
parent_dynamic: Optional[str],
|
||||||
version: str,
|
version: str,
|
||||||
) -> None:
|
) -> None:
|
||||||
if "{ suffix" in variable["path"]:
|
|
||||||
raise Exception()
|
|
||||||
"""Add a new variable"""
|
"""Add a new variable"""
|
||||||
if not isinstance(filename, list):
|
if not isinstance(filename, list):
|
||||||
filename = [filename]
|
filename = [filename]
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,6 @@ ALLOWED_LEADER_PROPERTIES.add("basic")
|
||||||
ALLOWED_LEADER_PROPERTIES.add("standard")
|
ALLOWED_LEADER_PROPERTIES.add("standard")
|
||||||
ALLOWED_LEADER_PROPERTIES.add("advanced")
|
ALLOWED_LEADER_PROPERTIES.add("advanced")
|
||||||
dict_env['validators_rougail.var1'] = "{% if _.var1 != index %}\n value != than index\n{% endif %}"
|
dict_env['validators_rougail.var1'] = "{% if _.var1 != index %}\n value != than index\n{% endif %}"
|
||||||
option_2 = IntOption(name="var1", doc="a second variable", multi=True, default=[0, 1, 2], default_multi=0, validators=[Calculation(func['valid_with_jinja'], Params((), kwargs={'__internal_jinja': ParamValue("validators_rougail.var1"), '__internal_type': ParamValue("string"), '__internal_multi': ParamValue(False), '__internal_files': ParamValue(['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml']), '__internal_attribute': ParamValue("validators"), '__internal_variable': ParamValue("rougail.var1"), 'index': ParamIndex(), '_.var1': ParamSelfOption(whole=False)}))], properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml'], 'type': 'number', 'test': (0,)})
|
option_2 = IntOption(name="var1", doc="a second variable", multi=True, default=[0, 1, 2], default_multi=0, validators=[Calculation(func['valid_with_jinja'], Params((), kwargs={'__internal_jinja': ParamValue("validators_rougail.var1"), '__internal_type': ParamValue("string"), '__internal_multi': ParamValue(False), '__internal_files': ParamValue(['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml']), '__internal_attribute': ParamValue("validators"), '__internal_variable': ParamValue("rougail.var1"), 'index': ParamIndex(), '_.var1': ParamSelfOption(whole=False)}))], properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml'], 'type': 'number'})
|
||||||
optiondescription_1 = OptionDescription(name="rougail", doc="Rougail", group_type=groups.namespace, children=[option_2], properties=frozenset({"standard"}), informations={'ymlfiles': ['']})
|
optiondescription_1 = OptionDescription(name="rougail", doc="Rougail", group_type=groups.namespace, children=[option_2], properties=frozenset({"standard"}), informations={'ymlfiles': ['']})
|
||||||
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])
|
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])
|
||||||
|
|
|
||||||
|
|
@ -7,5 +7,5 @@ ALLOWED_LEADER_PROPERTIES.add("basic")
|
||||||
ALLOWED_LEADER_PROPERTIES.add("standard")
|
ALLOWED_LEADER_PROPERTIES.add("standard")
|
||||||
ALLOWED_LEADER_PROPERTIES.add("advanced")
|
ALLOWED_LEADER_PROPERTIES.add("advanced")
|
||||||
dict_env['validators_var1'] = "{% if _.var1 != index %}\n value != than index\n{% endif %}"
|
dict_env['validators_var1'] = "{% if _.var1 != index %}\n value != than index\n{% endif %}"
|
||||||
option_1 = IntOption(name="var1", doc="a second variable", multi=True, default=[0, 1, 2], default_multi=0, validators=[Calculation(func['valid_with_jinja'], Params((), kwargs={'__internal_jinja': ParamValue("validators_var1"), '__internal_type': ParamValue("string"), '__internal_multi': ParamValue(False), '__internal_files': ParamValue(['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml']), '__internal_attribute': ParamValue("validators"), '__internal_variable': ParamValue("var1"), 'index': ParamIndex(), '_.var1': ParamSelfOption(whole=False)}))], properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml'], 'type': 'number', 'test': (0,)})
|
option_1 = IntOption(name="var1", doc="a second variable", multi=True, default=[0, 1, 2], default_multi=0, validators=[Calculation(func['valid_with_jinja'], Params((), kwargs={'__internal_jinja': ParamValue("validators_var1"), '__internal_type': ParamValue("string"), '__internal_multi': ParamValue(False), '__internal_files': ParamValue(['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml']), '__internal_attribute': ParamValue("validators"), '__internal_variable': ParamValue("var1"), 'index': ParamIndex(), '_.var1': ParamSelfOption(whole=False)}))], properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml'], 'type': 'number'})
|
||||||
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[option_1])
|
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[option_1])
|
||||||
|
|
|
||||||
|
|
@ -6,19 +6,19 @@
|
||||||
"val2"
|
"val2"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"rougail.val1.val1.var": {
|
"rougail.{{ suffix }}val1.{{ suffix }}val1.var": {
|
||||||
"owner": "default",
|
"owner": "default",
|
||||||
"value": null
|
"value": null
|
||||||
},
|
},
|
||||||
"rougail.val1.val2.var": {
|
"rougail.{{ suffix }}val1.{{ suffix }}val2.var": {
|
||||||
"owner": "default",
|
"owner": "default",
|
||||||
"value": null
|
"value": null
|
||||||
},
|
},
|
||||||
"rougail.val2.val1.var": {
|
"rougail.{{ suffix }}val2.{{ suffix }}val1.var": {
|
||||||
"owner": "default",
|
"owner": "default",
|
||||||
"value": null
|
"value": null
|
||||||
},
|
},
|
||||||
"rougail.val2.val2.var": {
|
"rougail.{{ suffix }}val2.{{ suffix }}val2.var": {
|
||||||
"owner": "default",
|
"owner": "default",
|
||||||
"value": null
|
"value": null
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,8 @@
|
||||||
"val1",
|
"val1",
|
||||||
"val2"
|
"val2"
|
||||||
],
|
],
|
||||||
"rougail.val1.val1.var": null,
|
"rougail.{{ suffix }}val1.{{ suffix }}val1.var": null,
|
||||||
"rougail.val1.val2.var": null,
|
"rougail.{{ suffix }}val1.{{ suffix }}val2.var": null,
|
||||||
"rougail.val2.val1.var": null,
|
"rougail.{{ suffix }}val2.{{ suffix }}val1.var": null,
|
||||||
"rougail.val2.val2.var": null
|
"rougail.{{ suffix }}val2.{{ suffix }}val2.var": null
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,19 +6,19 @@
|
||||||
"val2"
|
"val2"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"rougail.val1.val1.var": {
|
"rougail.{{ suffix }}val1.{{ suffix }}val1.var": {
|
||||||
"owner": "default",
|
"owner": "default",
|
||||||
"value": null
|
"value": null
|
||||||
},
|
},
|
||||||
"rougail.val1.val2.var": {
|
"rougail.{{ suffix }}val1.{{ suffix }}val2.var": {
|
||||||
"owner": "default",
|
"owner": "default",
|
||||||
"value": null
|
"value": null
|
||||||
},
|
},
|
||||||
"rougail.val2.val1.var": {
|
"rougail.{{ suffix }}val2.{{ suffix }}val1.var": {
|
||||||
"owner": "default",
|
"owner": "default",
|
||||||
"value": null
|
"value": null
|
||||||
},
|
},
|
||||||
"rougail.val2.val2.var": {
|
"rougail.{{ suffix }}val2.{{ suffix }}val2.var": {
|
||||||
"owner": "default",
|
"owner": "default",
|
||||||
"value": null
|
"value": null
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
["rougail.val1.val1.var", "rougail.val1.val2.var", "rougail.val2.val1.var", "rougail.val2.val2.var"]
|
["rougail.{{ suffix }}val1.{{ suffix }}val1.var", "rougail.{{ suffix }}val1.{{ suffix }}val2.var", "rougail.{{ suffix }}val2.{{ suffix }}val1.var", "rougail.{{ suffix }}val2.{{ suffix }}val2.var"]
|
||||||
|
|
@ -3,8 +3,8 @@
|
||||||
"val1",
|
"val1",
|
||||||
"val2"
|
"val2"
|
||||||
],
|
],
|
||||||
"rougail.val1.val1.var": null,
|
"rougail.{{ suffix }}val1.{{ suffix }}val1.var": null,
|
||||||
"rougail.val1.val2.var": null,
|
"rougail.{{ suffix }}val1.{{ suffix }}val2.var": null,
|
||||||
"rougail.val2.val1.var": null,
|
"rougail.{{ suffix }}val2.{{ suffix }}val1.var": null,
|
||||||
"rougail.val2.val2.var": null
|
"rougail.{{ suffix }}val2.{{ suffix }}val2.var": null
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@ ALLOWED_LEADER_PROPERTIES.add("standard")
|
||||||
ALLOWED_LEADER_PROPERTIES.add("advanced")
|
ALLOWED_LEADER_PROPERTIES.add("advanced")
|
||||||
option_2 = StrOption(name="var", doc="A identifier variable", multi=True, default=["val1", "val2"], default_multi="val1", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml'], 'type': 'string'})
|
option_2 = StrOption(name="var", doc="A identifier variable", multi=True, default=["val1", "val2"], default_multi="val1", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml'], 'type': 'string'})
|
||||||
option_5 = StrOption(name="var", doc="A dynamic variable", properties=frozenset({"basic", "mandatory"}), informations={'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml'], 'type': 'string'})
|
option_5 = StrOption(name="var", doc="A dynamic variable", properties=frozenset({"basic", "mandatory"}), informations={'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml'], 'type': 'string'})
|
||||||
optiondescription_4 = ConvertDynOptionDescription(name="{{ identifier }}", doc="A dynamic family", identifiers=Calculation(func['calc_value'], Params((ParamOption(option_2, notraisepropertyerror=True)), kwargs={'allow_none': ParamValue(True)})), children=[option_5], properties=frozenset({"basic"}), informations={'dynamic_variable': 'rougail.var', 'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml']})
|
optiondescription_4 = ConvertDynOptionDescription(name="{{ suffix }}{{ identifier }}", doc="A dynamic family", identifiers=Calculation(func['calc_value'], Params((ParamOption(option_2, notraisepropertyerror=True)), kwargs={'allow_none': ParamValue(True)})), children=[option_5], properties=frozenset({"basic"}), informations={'dynamic_variable': 'rougail.var', 'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml']})
|
||||||
optiondescription_3 = ConvertDynOptionDescription(name="{{ identifier }}", doc="A dynamic family", identifiers=Calculation(func['calc_value'], Params((ParamOption(option_2, notraisepropertyerror=True)), kwargs={'allow_none': ParamValue(True)})), children=[optiondescription_4], properties=frozenset({"basic"}), informations={'dynamic_variable': 'rougail.var', 'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml']})
|
optiondescription_3 = ConvertDynOptionDescription(name="{{ suffix }}{{ identifier }}", doc="A dynamic family", identifiers=Calculation(func['calc_value'], Params((ParamOption(option_2, notraisepropertyerror=True)), kwargs={'allow_none': ParamValue(True)})), children=[optiondescription_4], properties=frozenset({"basic"}), informations={'dynamic_variable': 'rougail.var', 'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml']})
|
||||||
optiondescription_1 = OptionDescription(name="rougail", doc="Rougail", group_type=groups.namespace, children=[option_2, optiondescription_3], properties=frozenset({"basic"}), informations={'ymlfiles': ['']})
|
optiondescription_1 = OptionDescription(name="rougail", doc="Rougail", group_type=groups.namespace, children=[option_2, optiondescription_3], properties=frozenset({"basic"}), informations={'ymlfiles': ['']})
|
||||||
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])
|
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue