¿Cómo evito mostrar las tareas omitidas de Ansible?

14

La salida de mis libros de jugadas siempre está completamente inundada de resultados inútiles con respecto a qué tareas se han omitido, lo que hace que sea molesto y que lleve mucho tiempo buscar y encontrar la información específica que estoy buscando.

Aquí hay un ejemplo de un libro de jugadas

- name: Stopping Puppet Agent
  service: name=pe-puppet state=stopped
  ignore_errors: true
  register: result
- include: rollback/restart-pe-puppet.yml
  when: result|failed

Y la salida asociada:

TASK: [name | Stopping Puppet Agent] **************************************
<server.name> REMOTE_MODULE service name=pe-puppet state=stopped
changed: [server.name] => {"changed": true, "name": "pe-puppet",     "state":"stopped"}

TASK: [name | judge_log msg='Restarting pe-puppet'] ***********************
skipping: [server.name]

TASK: [name | starting pe-puppet] *****************************************
skipping: [server.name]

TASK: [name | judge_log msg='pe-puppet restart successful'] ***************
skipping: [sserver.name]

TASK: [name | judge_log msg='pe-puppet restart failed' sec=FATAL] *********
skipping: [server.name]

TASK: [name | fail msg="Failed to start pe-puppet."] **********************
skipping: [server.name]

TASK: [name | judge_log msg='{{APP_NAME | capitalize}} deployment failed.'] ***
skipping: [server.name]

TASK: [name | fail msg="The {{APP_NAME | capitalize}} deployment failed."] ***
skipping: [server.name]

Casi toda esa salida es inútil para mí. El display_skipped_hostsdice que todavía hace que aparezca el encabezado de la tarea. ¿Hay alguna forma de omitir las tareas omitidas por completo?

asdoylejr
fuente
Si está satisfecho con la edición del código ansible, puede intentar agregar una línea msg = ''antes de esta línea
masegaloeh

Respuestas:

13

Yo uso otra forma sin cambiar ningún código:

Ansible usa el complemento de devolución de llamada 'predeterminado' para mostrar la salida, pero puede usar el complemento de devolución de llamada 'omitido' en lugar de 'predeterminado'. 'skippy' usa 'default' excepto para tareas omitidas.

Para usar el complemento 'omitido', agregue la siguiente línea (o descomente) en su archivo ansible.cfg:

stdout_callback = skippy

Para localizar ansible.cfg, use el comando:

ansible --version

Si no tiene este archivo, obtenga un archivo de ejemplo de fuentes ansibles y cópielo en su carpeta de trabajo desde donde llame a ansible.

Nelson G.
fuente
4

Ahora, el skippymódulo está en desuso.

Cree ansible.cfgen la raíz de su proyecto y agregue las siguientes instrucciones:

[defaults]
display_skipped_hosts = no

También puede editar su archivo de configuración global /etc/ansible/ansible.cfg.

Mikael Flora
fuente
2

Si la documentación dice que el encabezado todavía aparece, entonces no puede evitarlo a menos que cambie el comportamiento ansible editando el código. Si aún insiste en editarlo, puede intentar encontrar el archivo lib/ansible/callbacks.pyy agregar esta línea de cadena

msg = ''

antes de esta línea

display(msg, color='cyan', runner=self.runner)
masegaloeh
fuente