28 lines
898 B
Plaintext
28 lines
898 B
Plaintext
|
# Returns a generic block of values suitable for inclusion in most states.
|
||
|
{% macro sls_block(dict, ind=4) %}
|
||
|
{% for key, value in dict.items() %}
|
||
|
{{ '-'|indent(ind, True) }} {{ key }}: {{ value|json() }}
|
||
|
{% endfor %}
|
||
|
{% endmacro %}
|
||
|
|
||
|
# Serializes dicts into sequenced data
|
||
|
{%- macro serialize(data) -%}
|
||
|
{%- if data is mapping -%}
|
||
|
{%- set ret = [] -%}
|
||
|
{%- for key, value in data.items() -%}
|
||
|
{%- set value = serialize(value)|load_json() -%}
|
||
|
{%- do ret.append({key: value}) -%}
|
||
|
{%- endfor -%}
|
||
|
{%- elif data is iterable and data is not string -%}
|
||
|
{%- set ret = [] -%}
|
||
|
{%- for value in data -%}
|
||
|
{%- set value = serialize(value)|load_json() -%}
|
||
|
{%- do ret.append(value) -%}
|
||
|
{%- endfor -%}
|
||
|
{%- else -%}
|
||
|
{% set ret = data %}
|
||
|
{%- endif -%}
|
||
|
|
||
|
{{ ret|json() }}
|
||
|
{%- endmacro -%}
|