Fix rendering of external_auth config.

This now properly also supports per user, per minion as well as
function argument limiting.
This commit is contained in:
Heinz Wiesinger 2017-05-09 12:50:04 +02:00
parent eb09c3bdc6
commit 68a2b72519
1 changed files with 27 additions and 0 deletions

View File

@ -511,7 +511,34 @@ external_auth:
{%- for user, commands in users.iteritems() %}
{{ user }}:
{%- for command in commands %}
{%- if command is mapping %}
{%- for target, targetcommands in command.iteritems() %}
- {% raw %}'{% endraw %}{{ target }}{% raw %}'{% endraw %}:
{%- for targetcommand in targetcommands %}
{%- if targetcommand is mapping %}
{%- for module, options in targetcommand.iteritems() %}
- {% raw %}'{% endraw %}{{ module }}{% raw %}'{% endraw %}:
{%- for category, arguments in options.iteritems() %}
{% raw %}'{% endraw %}{{ category }}{% raw %}'{% endraw %}:
{%- if arguments is mapping %}
{%- for key, argument in arguments.iteritems() %}
{% raw %}'{% endraw %}{{ key }}{% raw %}'{% endraw %}: {% raw %}'{% endraw %}{{ argument }}{% raw %}'{% endraw %}
{%- endfor %}
{%- else %}
{%- for argument in arguments %}
- {% raw %}'{% endraw %}{{ argument }}{% raw %}'{% endraw %}
{%- endfor %}
{%- endif %}
{%- endfor %}
{%- endfor %}
{%- else %}
- {% raw %}'{% endraw %}{{ targetcommand }}{% raw %}'{% endraw %}
{%- endif %}
{%- endfor %}
{%- endfor %}
{%- else %}
- {% raw %}'{% endraw %}{{ command }}{% raw %}'{% endraw %}
{%- endif %}
{%- endfor -%}
{%- endfor -%}
{%- endfor -%}