feat(macro): to use in several state

This commit is contained in:
Alkivi 2019-04-24 11:03:27 +02:00
parent 00480b992c
commit 70e66c97be
2 changed files with 29 additions and 0 deletions

22
sudoers/macros.sls Normal file
View File

@ -0,0 +1,22 @@
{%- macro sudoers(for_user, sudo, config, priority='20', state='present') -%}
{%- set filename = priority ~ '-' ~ for_user|replace('.','-') ~ '-' ~ sudo %}
{% if state == 'present' %}
/etc/sudoers.d/{{ filename }}:
file.managed:
- user: root
- group: root
- mode: 440
- template: jinja
- source: salt://sudoers/templates/sudoers.jinja
- context:
for_user: {{ for_user }}
sudo: {{ sudo }}
config: {{ config }}
{% elif state == 'absent' %}
/etc/sudoers.d/{{ filename }}:
file.absent
{% endif %}
{%- endmacro %}

View File

@ -0,0 +1,7 @@
{%- if config.command is string -%}
{{ for_user }} {{ config.privileges }}: {{ config.command }}
{%- else -%}
{% for command in config.command -%}
{{ for_user }} {{ config.privileges }}: {{ command }}
{% endfor %}
{%- endif -%}