feat(macro): to use in several state

pull/49/head
Alkivi 5 years ago
parent 00480b992c
commit 70e66c97be
  1. 22
      sudoers/macros.sls
  2. 7
      sudoers/templates/sudoers.jinja

@ -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 %}

@ -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 -%}
Loading…
Cancel
Save