tower - Ansible: ¿Cómo cambiar el directorio activo en Ansible Playbook?
ansible tutorial (3)
Esta pregunta estaba en los resultados de cuando intentaba averiguar por qué ''shell'' no estaba respetando mis entradas chdir
cuando tuve que volver a Ansible 1.9. Así que estaré publicando mi solución.
tuve
- name: task name
shell:
cmd: touch foobar
creates: foobar
chdir: /usr/lib/foobar
Funcionó con Ansible> 2, pero para 1.9 tuve que cambiarlo a.
- name: task name
shell: touch foobar
args:
creates: foobar
chdir: /usr/lib/foobar
Sólo quería compartir.
- name: Go to the folder
command: chdir=/opt/tools/temp
Cuando ejecuto mi libro de jugadas, obtengo:
TASK: [Go to the folder] *****************************
failed: [host] => {"failed": true, "rc": 256}
msg: no command given
Cualquier ayuda es muy apreciada.
No hay concepto de directorio actual en Ansible. Puede especificar el directorio actual para una tarea específica, como lo hizo en su libro de jugadas. La única parte faltante fue el comando real para ejecutar. Prueba esto:
- name: Go to the folder and execute command
command: chdir=/opt/tools/temp ls
Si necesita una consola de inicio de sesión (como para Bundler), entonces tiene que hacer el comando de esta manera.
command: bash -lc "cd /path/to/folder && bundle install"