|
|
@@ -960,18 +960,23 @@ pillar_roots: |
|
|
|
|
|
|
|
{% if 'ext_pillar' in cfg_master %} |
|
|
|
{%- do default_keys.append('ext_pillar') %} |
|
|
|
{#- workaround for missing mapping test in CentOS 6, part A #} |
|
|
|
{%- set is_mapping = {} %} |
|
|
|
ext_pillar: |
|
|
|
{%- for pillar in cfg_master['ext_pillar'] -%} |
|
|
|
{%- for key in pillar -%} |
|
|
|
{%- if pillar[key] is string %} |
|
|
|
- {{ key }}: {{ pillar[key] }} |
|
|
|
{%- elif pillar[key] is iterable and pillar[key] is not mapping %} |
|
|
|
{#- workaround for missing mapping test in CentOS 6, part B #} |
|
|
|
{%- do is_mapping.update({key: type(pillar[key]) == type({})}) %} |
|
|
|
{%- elif pillar[key] is iterable and not is_mapping[key] %} |
|
|
|
- {{ key }}: |
|
|
|
{%- for parameter in pillar[key] %} |
|
|
|
- {{ parameter }} |
|
|
|
{%- endfor -%} |
|
|
|
{%- elif pillar[key] is mapping and pillar[key] is not string %} |
|
|
|
- {{ key }}: |
|
|
|
{#- workaround for missing mapping test in CentOS 6, part C #} |
|
|
|
{%- elif is_mapping[key] and pillar[key] is not string %} |
|
|
|
- {{ key }}: |
|
|
|
{%- for parameter in pillar[key] %} |
|
|
|
{{ parameter }}: {{pillar[key][parameter]}} |
|
|
|
{%- endfor %} |