# -*- coding: utf-8 -*- # vim: ft=jinja {# 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 -%}