feat: leadership => sequence
This commit is contained in:
parent
49063e107d
commit
ce059ffb01
63 changed files with 112 additions and 76 deletions
|
|
@ -19,6 +19,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
from io import BytesIO
|
||||
from pathlib import Path
|
||||
from typing import Optional
|
||||
from copy import deepcopy
|
||||
|
||||
from ruamel.yaml import YAML, CommentedMap
|
||||
from ruamel.yaml.representer import RoundTripRepresenter
|
||||
|
|
@ -37,6 +38,7 @@ from djlint.reformat import formatter
|
|||
from tiramisu.config import get_common_path
|
||||
|
||||
from rougail.convert import RougailConvert
|
||||
from rougail.convert.collect import Collect
|
||||
from rougail.convert.object_model import (
|
||||
Variable,
|
||||
Family,
|
||||
|
|
@ -240,6 +242,8 @@ class RougailOutputFormatter:
|
|||
family["exists"] = yaml_data["exists"]
|
||||
force_keys = list(yaml_data)
|
||||
type_ = obj.type
|
||||
if type_ in RENAME_TYPE:
|
||||
type_ = RENAME_TYPE[type_]
|
||||
if type_ == "dynamic":
|
||||
attributes = self.get_attributes(self.rougail.dynamic)
|
||||
else:
|
||||
|
|
@ -247,17 +251,20 @@ class RougailOutputFormatter:
|
|||
for attr, default_value in attributes.items():
|
||||
if attr in ["name", "path", "namespace", "version", "xmlfiles"]:
|
||||
continue
|
||||
try:
|
||||
value = getattr(obj, attr)
|
||||
except AttributeError:
|
||||
continue
|
||||
if attr == "type":
|
||||
value = type_
|
||||
else:
|
||||
try:
|
||||
value = getattr(obj, attr)
|
||||
except AttributeError:
|
||||
continue
|
||||
if attr != "type" and attr not in force_keys and value == default_value:
|
||||
continue
|
||||
if attr in children:
|
||||
attr = f"_{attr}"
|
||||
family[attr] = self.object_to_yaml(attr, type_, value, False, path)
|
||||
if type_ == "dynamic" or (children and type_ == "family"):
|
||||
tmp_family = family.copy()
|
||||
tmp_family = deepcopy(family)
|
||||
if "_type" in tmp_family:
|
||||
del tmp_family["_type"]
|
||||
else:
|
||||
|
|
@ -276,10 +283,21 @@ class RougailOutputFormatter:
|
|||
elif cpath.replace('{{ identifier }}', '{{ suffix }}') in child:
|
||||
cpath = cpath.replace('{{ identifier }}', '{{ suffix }}')
|
||||
child = child[cpath]
|
||||
tmp_family[cpath] = child
|
||||
family_type = self.rougail.is_family_or_variable("", tmp_family, False, "")
|
||||
tmp_family[cpath] = child
|
||||
#family_type = self.rougail.is_family_or_variable("", tmp_family, False, "")
|
||||
collect = Collect(
|
||||
self.rougail,
|
||||
name,
|
||||
parent,
|
||||
tmp_family,
|
||||
None,
|
||||
None,
|
||||
test_exists=False,
|
||||
raises=False,
|
||||
)
|
||||
family_type = collect.option_type
|
||||
if family_type == "family":
|
||||
family_type = self.rougail.get_family_or_variable_type(tmp_family)
|
||||
family_type = collect.user_type
|
||||
if family_type is None:
|
||||
family_type = 'family'
|
||||
if family_type == type_:
|
||||
|
|
@ -347,8 +365,14 @@ class RougailOutputFormatter:
|
|||
xmlfiles=obj.xmlfiles,
|
||||
)
|
||||
obj.params.append(param)
|
||||
if type_ == 'choice':
|
||||
variable_obj = self.rougail.choices
|
||||
elif type_ == "regexp":
|
||||
variable_obj = self.rougail.regexp
|
||||
else:
|
||||
variable_obj = self.rougail.variable
|
||||
for attr, default_value in self.get_attributes(
|
||||
self.rougail.variable, ["name", "path", "namespace", "version", "xmlfiles"]
|
||||
variable_obj, ["name", "path", "namespace", "version", "xmlfiles"]
|
||||
).items():
|
||||
if attr == "type":
|
||||
value = type_
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
version: 1.1
|
||||
|
||||
leadership:
|
||||
type: leadership
|
||||
type: sequence
|
||||
hidden: true
|
||||
|
||||
var1: # a first variable
|
||||
|
|
|
|||
|
|
@ -18,33 +18,33 @@ var2:
|
|||
|
||||
var3:
|
||||
description: the third variable
|
||||
mandatory: false
|
||||
choices:
|
||||
- a
|
||||
- b
|
||||
- c
|
||||
mandatory: false
|
||||
|
||||
var4:
|
||||
description: the forth variable
|
||||
mandatory: false
|
||||
choices:
|
||||
- null
|
||||
- b
|
||||
- c
|
||||
mandatory: false
|
||||
|
||||
var5:
|
||||
description: the fifth variable
|
||||
default: a
|
||||
choices:
|
||||
- a
|
||||
- b
|
||||
- c
|
||||
default: a
|
||||
|
||||
var6:
|
||||
description: the sixth variable
|
||||
default: 1
|
||||
choices:
|
||||
- 1
|
||||
- 2
|
||||
- 3
|
||||
default: 1
|
||||
...
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ version: 1.1
|
|||
|
||||
var:
|
||||
description: a variable
|
||||
default: 9
|
||||
choices:
|
||||
jinja: |-
|
||||
{% for n in trange(0, 10) %}
|
||||
|
|
@ -11,5 +12,4 @@ var:
|
|||
{% endfor %}
|
||||
return_type: integer
|
||||
description: choices is 0 to 9
|
||||
default: 9
|
||||
...
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ var1: # a second variable
|
|||
|
||||
var2:
|
||||
description: a first variable
|
||||
default: a
|
||||
choices:
|
||||
variable: _.var1
|
||||
default: a
|
||||
...
|
||||
|
|
|
|||
|
|
@ -9,9 +9,9 @@ var1: # a second variable
|
|||
|
||||
var2:
|
||||
description: a first variable
|
||||
default: a
|
||||
choices:
|
||||
variable: _.var1
|
||||
default: a
|
||||
|
||||
var3:
|
||||
description: a third variable
|
||||
|
|
|
|||
|
|
@ -9,9 +9,9 @@ var1: # a second variable
|
|||
|
||||
var2:
|
||||
description: a first variable
|
||||
default: a
|
||||
choices:
|
||||
variable: _.var1
|
||||
default: a
|
||||
|
||||
family:
|
||||
|
||||
|
|
|
|||
|
|
@ -7,6 +7,6 @@ var:
|
|||
test:
|
||||
- '#b1b1b1'
|
||||
- '#b2b2b2'
|
||||
regexp: ^#(?:[0-9a-f]{3}){1,2}$
|
||||
default: '#a1a1a1'
|
||||
regexp: ^#(?:[0-9a-f]{3}){1,2}$
|
||||
...
|
||||
|
|
|
|||
|
|
@ -7,8 +7,8 @@ var1:
|
|||
test:
|
||||
- '#b1b1b1'
|
||||
- '#b2b2b2'
|
||||
regexp: ^#(?:[0-9a-f]{3}){1,2}$
|
||||
default: '#a1a1a1'
|
||||
regexp: ^#(?:[0-9a-f]{3}){1,2}$
|
||||
|
||||
var2:
|
||||
description: a second variable
|
||||
|
|
|
|||
|
|
@ -4,9 +4,9 @@ version: 1.1
|
|||
|
||||
var:
|
||||
description: A choice
|
||||
default: quote'
|
||||
choices:
|
||||
- quote'
|
||||
- quote"
|
||||
- quote"'
|
||||
default: quote'
|
||||
...
|
||||
|
|
|
|||
|
|
@ -4,16 +4,16 @@ version: 1.1
|
|||
|
||||
variable1:
|
||||
description: a first variable
|
||||
multi: true
|
||||
choices:
|
||||
- val1
|
||||
- val2
|
||||
multi: true
|
||||
|
||||
variable2:
|
||||
description: a second variable
|
||||
multi: true
|
||||
mandatory: false
|
||||
choices:
|
||||
- val1
|
||||
- val2
|
||||
multi: true
|
||||
mandatory: false
|
||||
...
|
||||
|
|
|
|||
|
|
@ -8,8 +8,8 @@ source_variable_2: val2 # the second source variable
|
|||
|
||||
my_variable:
|
||||
description: a variable
|
||||
default: val1
|
||||
choices:
|
||||
- variable: _.source_variable_1
|
||||
- variable: _.source_variable_2
|
||||
default: val1
|
||||
...
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ version: 1.1
|
|||
|
||||
var:
|
||||
description: a variable
|
||||
default: 9
|
||||
choices:
|
||||
jinja: |-
|
||||
{% for item in trange(0, 10) %}
|
||||
|
|
@ -11,5 +12,4 @@ var:
|
|||
{%- endfor %}
|
||||
return_type: integer
|
||||
description: choice for 0 to 9
|
||||
default: 9
|
||||
...
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ version: 1.1
|
|||
|
||||
var:
|
||||
description: a variable
|
||||
default: 9
|
||||
choices:
|
||||
jinja: |-
|
||||
{% for item in trange(0, 10) %}
|
||||
|
|
@ -11,5 +12,4 @@ var:
|
|||
{%- endfor %}
|
||||
return_type: integer
|
||||
description: choice for 0 to 9
|
||||
default: 9
|
||||
...
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ version: 1.1
|
|||
|
||||
variable:
|
||||
description: a variable
|
||||
default: c
|
||||
choices:
|
||||
variable: _.unknown_variable
|
||||
optional: true
|
||||
|
|
@ -11,5 +12,4 @@ variable:
|
|||
- a
|
||||
- b
|
||||
- c
|
||||
default: c
|
||||
...
|
||||
|
|
|
|||
|
|
@ -4,9 +4,9 @@ version: 1.1
|
|||
|
||||
var:
|
||||
description: A choice
|
||||
default: c
|
||||
choices:
|
||||
- a
|
||||
- b
|
||||
- c
|
||||
default: c
|
||||
...
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: a leader
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leadership:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: [] # a leader
|
||||
|
||||
|
|
|
|||
|
|
@ -3,5 +3,5 @@
|
|||
version: 1.1
|
||||
|
||||
empty_leader:
|
||||
type: leadership
|
||||
type: sequence
|
||||
...
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- leader
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # the leader
|
||||
- leader
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: a leader
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leadership:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- value1
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ general1:
|
|||
|
||||
leader:
|
||||
description: leader
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # leader
|
||||
|
||||
|
|
|
|||
|
|
@ -4,13 +4,16 @@ version: 1.1
|
|||
|
||||
leadership:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: a leader
|
||||
examples:
|
||||
- val1
|
||||
- val2
|
||||
test:
|
||||
- val1
|
||||
- val2
|
||||
default:
|
||||
- value_1
|
||||
- value_2
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: [] # the leader
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- a
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- a
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- a
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: a leader
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leadership:
|
||||
description: A leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: [] # The leader
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leadership:
|
||||
description: A leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: The leader
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leadership:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- value1
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- value1
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- value1
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
version: 1.1
|
||||
|
||||
leader:
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
- a
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- value1
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- value1
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- value1
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- value1
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ calculate: # a calculated variable
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: a leader
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leadership_1:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- value1
|
||||
|
|
@ -14,7 +14,7 @@ leadership_1:
|
|||
|
||||
leadership_2:
|
||||
description: a second leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: a leader
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leadership_1:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- value1
|
||||
|
|
@ -14,7 +14,7 @@ leadership_1:
|
|||
|
||||
leadership_2:
|
||||
description: a second leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- value1
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: The leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: The leader
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
hidden: true
|
||||
|
||||
leader:
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: a leader
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: a leader
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ condition: true # a condition
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # aleader
|
||||
- a
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leadership:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # aleader
|
||||
- a
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: [] # a leader
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: a leader
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ condition: no # a condition
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: a leader
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ condition: yes # a condition
|
|||
|
||||
leader:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: [] # a leader
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: leader
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: # a leader
|
||||
- a
|
||||
|
|
|
|||
|
|
@ -6,7 +6,10 @@ var1: # A suffix variable
|
|||
- val1
|
||||
- val2
|
||||
|
||||
var2: val1 # A suffix variable2
|
||||
var2:
|
||||
description: A suffix variable2
|
||||
default: val1
|
||||
hidden: true
|
||||
|
||||
dyn{{ identifier }}:
|
||||
dynamic:
|
||||
|
|
|
|||
|
|
@ -6,7 +6,10 @@ var1: # A suffix variable
|
|||
- val1
|
||||
- val2
|
||||
|
||||
var2: val1 # A suffix variable2
|
||||
var2:
|
||||
description: A suffix variable2
|
||||
default: val1
|
||||
hidden: true
|
||||
|
||||
dyn{{ identifier }}:
|
||||
dynamic:
|
||||
|
|
|
|||
|
|
@ -24,4 +24,5 @@ var2:
|
|||
default:
|
||||
variable: _.dynval1.var
|
||||
propertyerror: false
|
||||
mandatory: false
|
||||
...
|
||||
|
|
|
|||
|
|
@ -22,5 +22,7 @@ var2:
|
|||
description: A variable calculated
|
||||
default:
|
||||
variable: _.dynval1.var
|
||||
propertyerror: false
|
||||
optional: true
|
||||
mandatory: false
|
||||
...
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ dyn{{ identifier }}:
|
|||
|
||||
leadership:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: [] # a leader
|
||||
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ dyn{{ identifier }}:
|
|||
|
||||
leadership:
|
||||
description: a leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader: [] # a leader
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ version: 1.1
|
|||
|
||||
leader:
|
||||
description: A leadership
|
||||
type: leadership
|
||||
type: sequence
|
||||
|
||||
leader:
|
||||
description: A leader
|
||||
|
|
|
|||
Loading…
Reference in a new issue