|
|
|
|
|
|
|
|
{% for rule in user['sudo_rules'] %} |
|
|
{% for rule in user['sudo_rules'] %} |
|
|
"validate {{ name }} sudo rule {{ loop.index0 }} {{ name }} {{ rule }}": |
|
|
"validate {{ name }} sudo rule {{ loop.index0 }} {{ name }} {{ rule }}": |
|
|
cmd.run: |
|
|
cmd.run: |
|
|
- name: 'visudo -cf - <<<"$rule"' |
|
|
|
|
|
|
|
|
- name: 'visudo -cf - <<<"$rule" | { read output; if [[ $output != "stdin: parsed OK" ]] ; then echo $output ; fi }' |
|
|
|
|
|
- stateful: True |
|
|
- shell: {{ users.visudo_shell }} |
|
|
- shell: {{ users.visudo_shell }} |
|
|
- env: |
|
|
- env: |
|
|
# Specify the rule via an env var to avoid shell quoting issues. |
|
|
# Specify the rule via an env var to avoid shell quoting issues. |