Estoy ejecutando el módulo sin formato de ansibleusando usuario no rooty quiero dar un comando que verifique alguna condición. Por ejemplo, quiero comprobar si un directorio existe o no antes de eliminarlo. Como el siguiente comando.
[ -d "$DIR" ] && echo "Yes"
Ahora quiero darle permiso al usuario no root para ejecutar este comando en el archivo sudoers.
xyzUser ALL = (ALL) NOPASSWD: 'something/that/lets/me/run/that/command'
Entonces, quiero saber qué puedo escribir en los sudoers que me permitirán ejecutar este comando y todos los demás comandos basados en condiciones.
Respuesta1
Por ejemplo, quiero comprobar si un directorio existe o no antes de eliminarlo.
- name: Example playbook to make sure a dir is absent
hosts: my_host_group
# Connect with a non-root user
remote_user: my_remote_user
# Use sudo, as you say you need it. Configure it on the relevant host
become: true
vars:
dir_to_remove: /path/to/dir/on/host
tasks:
- name: "remove {{ dir_to_remove }} if exists. Do nothing otherwise"
file:
path: "{{ dir_to_remove }}"
state: absent