Jak uniknąć pokazywania pominiętych zadań Ansible?

14

Dane wyjściowe moich podręczników są zawsze całkowicie wypełnione bezużytecznymi danymi wyjściowymi dotyczącymi tego, które zadania zostały pominięte, co sprawia, że ​​irytujące i czasochłonne jest wyszukiwanie konkretnych informacji, których szukam.

Oto przykład poradnika

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

I powiązane wyjście:

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]

Niemal cała ta produkcja jest dla mnie bezużyteczna. display_skipped_hostsMówi, że nadal powoduje nagłówek zadanie pojawiać. Czy istnieje sposób na całkowite pominięcie pominiętych zadań?

asdoylejr
źródło
Jeśli jesteś zadowolony z edycji kodu ansible, możesz spróbować dodać linię msg = ''przed tą linią
masegaloeh

Odpowiedzi:

13

Używam innego sposobu bez zmiany kodu:

Ansible używa „domyślnej” wtyczki zwrotnej do wyświetlania danych wyjściowych, ale można użyć „pomijanej” wtyczki zwrotnej zamiast „domyślnej”. „skippy” użyj „default”, z wyjątkiem pominiętych zadań.

Aby użyć wtyczki „pominiętej”, dodaj następujący wiersz (lub usuń komentarz) w pliku ansible.cfg:

stdout_callback = skippy

Aby zlokalizować plik ansible.cfg, użyj polecenia:

ansible --version

Jeśli nie masz tego pliku, pobierz przykładowy plik ze źródeł ansible i skopiuj go do folderu roboczego, z którego wywołujesz ansible.

Nelson G.
źródło
4

Teraz skippymoduł jest przestarzały.

Utwórz ansible.cfgw katalogu głównym projektu i dodaj następujące instrukcje:

[defaults]
display_skipped_hosts = no

Możesz także edytować swój globalny plik konfiguracyjny /etc/ansible/ansible.cfg.

Mikael Flora
źródło
2

Jeśli z dokumentacji wynika, że ​​nagłówek nadal się pojawia, nie można go uniknąć, chyba że zmienisz zachowanie ansible poprzez edycję kodu. Jeśli nadal nalegasz na jego edycję, możesz spróbować znaleźć plik lib/ansible/callbacks.pyi dodać ten wiersz ciągu

msg = ''

przed tą linią

display(msg, color='cyan', runner=self.runner)
masegaloeh
źródło