¿Cómo ejecutar un comando de shell en el modo de verificación de ansible?

1 minuto de lectura

En el modo de verificación, quiero mostrar la confirmación actual en el servidor. Estoy usando el comando de shell (git rev-parse HEAD) para registrar la variable y luego imprimirla/depurarla, pero ansible omite los comandos de shell en el modo de verificación.

¿Hay alguna forma de marcar un comando de shell como seguro para ejecutar en modo de verificación?

¿O algún módulo ansible para hacer lo que quiero? Me registré en el módulo de git pero solo parece que realiza pagos.

Cualquier entrada sería apreciada.

avatar de usuario
jfrenético

A partir de Ansible 2.2, la forma correcta de hacerlo es usar check_mode: no:

tasks:
  - name: this task will make changes to the system even in check mode
    command: /something/to/run --even-in-check-mode
    check_mode: no

  • Guau, check_mode: no significa sí, ¿ejecutar esto en modo de verificación? Que hace no ¿significar?

    – Nick

    23 de junio a las 3:04

Encontré la respuesta. tienes que agregar always_run: True a la tarea

  • Ahora que hay una mejor manera, creo que la respuesta aceptada debería cambiarse a la de @jfrenetic.

    – k1eran

    12 de septiembre de 2019 a las 9:45

  • Está en desuso. estoy recibiendo esto, [DEPRECATION WARNING]: always_run is deprecated. Use check_mode = no instead.. This feature will be removed in version 2.4. Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.

    – Nikhil Wagh

    18 de febrero de 2020 a las 9:24

¿Ha sido útil esta solución?