remove group constrainte, it's now a normal group
This commit is contained in:
@ -0,0 +1,39 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<rougail version="0.9">
|
||||
<services>
|
||||
<service name="test">
|
||||
<file>/etc/mailname</file>
|
||||
<file engine="jinja2">/etc/mailname2</file>
|
||||
</service>
|
||||
</services>
|
||||
<variables>
|
||||
<family name="general">
|
||||
<variable name="mode_conteneur_actif" type="string" description="No change">
|
||||
<value>non</value>
|
||||
</variable>
|
||||
<variable name="condition" type="string" description="condition">
|
||||
<value>oui</value>
|
||||
</variable>
|
||||
<variable name="leader" type="string" description="leader" multi="True">
|
||||
<value>a</value>
|
||||
<value>b</value>
|
||||
</variable>
|
||||
<variable name="follower1" type="string" description="follower1"/>
|
||||
<variable name="follower2" type="string" description="follower2"/>
|
||||
</family>
|
||||
</variables>
|
||||
<constraints>
|
||||
<group leader="leader">
|
||||
<follower>follower1</follower>
|
||||
<follower>follower2</follower>
|
||||
</group>
|
||||
<fill name="calc_val">
|
||||
<param name="valeur">valfill</param>
|
||||
<target>follower1</target>
|
||||
</fill>
|
||||
<condition name="disabled_if_in" source="leader">
|
||||
<param>a</param>
|
||||
<target type="variable">follower1</target>
|
||||
</condition>
|
||||
</constraints>
|
||||
</rougail>
|
@ -0,0 +1,61 @@
|
||||
{
|
||||
"rougail.general.mode_conteneur_actif": {
|
||||
"owner": "default",
|
||||
"value": "non"
|
||||
},
|
||||
"rougail.general.condition": {
|
||||
"owner": "default",
|
||||
"value": "oui"
|
||||
},
|
||||
"rougail.general.leader.leader": {
|
||||
"owner": "default",
|
||||
"value": [
|
||||
"a",
|
||||
"b"
|
||||
]
|
||||
},
|
||||
"rougail.general.leader.follower1": {
|
||||
"owner": [
|
||||
"error",
|
||||
"default"
|
||||
],
|
||||
"value": [
|
||||
"cannot access to option \"follower1\" because has property \"disabled\"",
|
||||
null
|
||||
]
|
||||
},
|
||||
"rougail.general.leader.follower2": {
|
||||
"owner": [
|
||||
"default",
|
||||
"default"
|
||||
],
|
||||
"value": [
|
||||
null,
|
||||
null
|
||||
]
|
||||
},
|
||||
"services.test.files.mailname.name": {
|
||||
"owner": "default",
|
||||
"value": "/etc/mailname"
|
||||
},
|
||||
"services.test.files.mailname.activate": {
|
||||
"owner": "default",
|
||||
"value": true
|
||||
},
|
||||
"services.test.files.mailname2.name": {
|
||||
"owner": "default",
|
||||
"value": "/etc/mailname2"
|
||||
},
|
||||
"services.test.files.mailname2.activate": {
|
||||
"owner": "default",
|
||||
"value": true
|
||||
},
|
||||
"services.test.activate": {
|
||||
"owner": "default",
|
||||
"value": true
|
||||
},
|
||||
"services.test.manage": {
|
||||
"owner": "default",
|
||||
"value": true
|
||||
}
|
||||
}
|
@ -0,0 +1,21 @@
|
||||
{
|
||||
"rougail.general.mode_conteneur_actif": "non",
|
||||
"rougail.general.condition": "oui",
|
||||
"rougail.general.leader.leader": [
|
||||
{
|
||||
"rougail.general.leader.leader": "a",
|
||||
"rougail.general.leader.follower2": null
|
||||
},
|
||||
{
|
||||
"rougail.general.leader.leader": "b",
|
||||
"rougail.general.leader.follower1": null,
|
||||
"rougail.general.leader.follower2": null
|
||||
}
|
||||
],
|
||||
"services.test.files.mailname.name": "/etc/mailname",
|
||||
"services.test.files.mailname.activate": true,
|
||||
"services.test.files.mailname2.name": "/etc/mailname2",
|
||||
"services.test.files.mailname2.activate": true,
|
||||
"services.test.activate": true,
|
||||
"services.test.manage": true
|
||||
}
|
@ -0,0 +1,61 @@
|
||||
{
|
||||
"rougail.general.mode_conteneur_actif": {
|
||||
"owner": "default",
|
||||
"value": "non"
|
||||
},
|
||||
"rougail.general.condition": {
|
||||
"owner": "default",
|
||||
"value": "oui"
|
||||
},
|
||||
"rougail.general.leader.leader": {
|
||||
"owner": "default",
|
||||
"value": [
|
||||
"a",
|
||||
"b"
|
||||
]
|
||||
},
|
||||
"rougail.general.leader.follower1": {
|
||||
"owner": [
|
||||
"error",
|
||||
"default"
|
||||
],
|
||||
"value": [
|
||||
"cannot access to option \"follower1\" because has property \"disabled\"",
|
||||
null
|
||||
]
|
||||
},
|
||||
"rougail.general.leader.follower2": {
|
||||
"owner": [
|
||||
"default",
|
||||
"default"
|
||||
],
|
||||
"value": [
|
||||
null,
|
||||
null
|
||||
]
|
||||
},
|
||||
"services.test.files.mailname.name": {
|
||||
"owner": "default",
|
||||
"value": "/etc/mailname"
|
||||
},
|
||||
"services.test.files.mailname.activate": {
|
||||
"owner": "default",
|
||||
"value": true
|
||||
},
|
||||
"services.test.files.mailname2.name": {
|
||||
"owner": "default",
|
||||
"value": "/etc/mailname2"
|
||||
},
|
||||
"services.test.files.mailname2.activate": {
|
||||
"owner": "default",
|
||||
"value": true
|
||||
},
|
||||
"services.test.activate": {
|
||||
"owner": "default",
|
||||
"value": true
|
||||
},
|
||||
"services.test.manage": {
|
||||
"owner": "default",
|
||||
"value": true
|
||||
}
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
leader: a
|
||||
follower2:
|
||||
leader: b
|
||||
follower1:
|
||||
follower2:
|
@ -0,0 +1,5 @@
|
||||
leader: a
|
||||
follower2:
|
||||
leader: b
|
||||
follower1:
|
||||
follower2:
|
@ -0,0 +1,4 @@
|
||||
C /etc/mailname 0644 root root - /usr/local/lib/etc/mailname
|
||||
z /etc/mailname - - - - -
|
||||
C /etc/mailname2 0644 root root - /usr/local/lib/etc/mailname2
|
||||
z /etc/mailname2 - - - - -
|
@ -0,0 +1,36 @@
|
||||
from importlib.machinery import SourceFileLoader
|
||||
from importlib.util import spec_from_loader, module_from_spec
|
||||
loader = SourceFileLoader('func', 'tests/dictionaries/../eosfunc/test.py')
|
||||
spec = spec_from_loader(loader.name, loader)
|
||||
func = module_from_spec(spec)
|
||||
loader.exec_module(func)
|
||||
for key, value in dict(locals()).items():
|
||||
if key != ['SourceFileLoader', 'func']:
|
||||
setattr(func, key, value)
|
||||
try:
|
||||
from tiramisu3 import *
|
||||
except:
|
||||
from tiramisu import *
|
||||
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
|
||||
option_4 = StrOption(name="condition", doc="condition", default="oui", properties=frozenset({"mandatory", "normal"}))
|
||||
option_6 = StrOption(name="leader", doc="leader", multi=True, default=['a', 'b'], properties=frozenset({"mandatory"}))
|
||||
option_7 = StrOption(name="follower1", doc="follower1", multi=True, default=Calculation(func.calc_val, Params((), kwargs={'valeur': ParamValue("valfill")})), properties=frozenset({"normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("a")}))}))
|
||||
option_8 = StrOption(name="follower2", doc="follower2", multi=True, properties=frozenset({"normal"}))
|
||||
option_5 = Leadership(name="leader", doc="leader", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
|
||||
option_2 = OptionDescription(name="general", doc="general", children=[option_3, option_4, option_5], properties=frozenset({"normal"}))
|
||||
option_1 = OptionDescription(name="rougail", doc="rougail", children=[option_2])
|
||||
option_13 = FilenameOption(name="name", doc="name", default="/etc/mailname")
|
||||
option_14 = BoolOption(name="activate", doc="activate", default=True)
|
||||
option_12 = OptionDescription(name="mailname", doc="mailname", children=[option_13, option_14])
|
||||
option_12.impl_set_information('source', "mailname")
|
||||
option_16 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
|
||||
option_17 = BoolOption(name="activate", doc="activate", default=True)
|
||||
option_15 = OptionDescription(name="mailname2", doc="mailname2", children=[option_16, option_17])
|
||||
option_15.impl_set_information('engine', "jinja2")
|
||||
option_15.impl_set_information('source', "mailname2")
|
||||
option_11 = OptionDescription(name="files", doc="files", children=[option_12, option_15])
|
||||
option_18 = BoolOption(name="activate", doc="activate", default=True)
|
||||
option_19 = BoolOption(name="manage", doc="manage", default=True)
|
||||
option_10 = OptionDescription(name="test", doc="test", children=[option_11, option_18, option_19])
|
||||
option_9 = OptionDescription(name="services", doc="services", children=[option_10], properties=frozenset({"hidden"}))
|
||||
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[option_1, option_9])
|
@ -0,0 +1,9 @@
|
||||
%for %%lead in %%leader
|
||||
leader: %%lead
|
||||
%if %%hasattr(%%lead, 'follower1')
|
||||
follower1: %%lead.follower1
|
||||
%end if
|
||||
%if %%hasattr(%%lead, 'follower2')
|
||||
follower2: %%lead.follower2
|
||||
%end if
|
||||
%end for
|
@ -0,0 +1,9 @@
|
||||
{% for lead in leader -%}
|
||||
leader: {{ lead }}
|
||||
{% if lead.follower1 is defined -%}
|
||||
follower1: {{ lead.follower1 if lead.follower1 }}
|
||||
{% endif -%}
|
||||
{% if lead.follower2 is defined -%}
|
||||
follower2: {{ lead.follower2 if lead.follower2 }}
|
||||
{% endif -%}
|
||||
{% endfor -%}
|
Reference in New Issue
Block a user