Ansible failed_when apenas imprime mensagem de erro personalizada

5

Estou escrevendo um manual simples Ansible para executar RHEL segundo detector em caixas Linux com distribuição mista.

aqui é o manual de jogo

---
- hosts: Linux
  vars_files:
    - ../group_vars/Linux.yml

  tasks:

    - name: Running RHEL leap second detector (will skip if distirubtion is not RHEL)
      when: ansible_distribution == "RedHat"
      script: ../scripts/leap_vulnerability.sh
      register: result
      changed_when: false

    - name: RHEL Lead second detector result
      when: ansible_distribution == "RedHat"
      fail: msg="Kernel {{ansible_kernel}} is vulnerable"
      failed_when: "'kernel is vulnerable' in result.stdout"

está funcionando bem e aqui está um exemplo de saída

TASK: [Running RHEL leap second detector (will skip if distirubtion is not RHEL)] ***
skipping: [UTIL02]
skipping: [UTIL01]
ok: [SERV01]
ok: [SERV02]

TASK: [RHEL Lead second detector result] **************************************
skipping: [UTIL02]
skipping: [UTIL01]
failed: [SERV01] => {"failed": true, "failed_when_result": true}
msg: Kernel 2.6.18-53.el5 is vulnerable
failed: [SERV02] => {"failed": true, "failed_when_result": true}
msg: Kernel 2.6.18-53.el5 is vulnerable

PLAY RECAP ********************************************************************

UTIL01            : ok=1    changed=0    unreachable=0    failed=0
UTIL02            : ok=1    changed=0    unreachable=0    failed=0
SERV01            : ok=2    changed=0    unreachable=0    failed=1
SERV02            : ok=2    changed=0    unreachable=0    failed=1

Como você pode ver, há uma linha extra de mensagem que eu realmente não quero.

failed: [SERV01] => {"failed": true, "failed_when_result": true}

É possível não imprimir essa mensagem de avaliação de condição apenas imprimir a mensagem de erro que eu defini? algo como seguir

failed: Kernel 2.6.18-53.el5 is vulnerable

    
por Ask and Learn 10.06.2015 / 06:08

2 respostas

1

Parece não haver como alterar a saída normal de ansible-playbook . Mas você pode gerar uma saída adicional usando plug-ins de retorno de chamada .

Você pode gravar um plug-in para obter sua própria saída, enquanto a saída normal é totalmente suprimida, redirecionando-a para /dev/null .

    
por 10.06.2015 / 12:16
0

Isso pode ser um pouco tarde, mas você não precisa usar failed_when quando estiver usando o módulo fail . Um when regular deve ser suficiente e não exibirá a mensagem de avaliação da condição.

    
por 26.11.2018 / 11:49

Tags