2014-10-01 8 views
19

Jak używać instrukcji when na podstawie standardowego wyjścia rejestru: wynik? Jeśli istnieje standardowe wyjście, chcę uruchomić system, jeśli nie ma wyjścia standardowego, chcę uruchomić komendę.Warunek odpowiedzi na podstawie stdout wyniku?

- hosts: myhosts 
    tasks: 
    - name: echo hello 
    command: echo hello 
    register: result 
    - command: somecommand {{ result.stdout }} 
    when: result|success 
    - command: someothercommand 
    when: result|failed 

Odpowiedz

42

Spróbuj sprawdzić, czy jest to pusty ciąg znaków czy nie?

- hosts: myhosts 
    tasks: 
    - name: echo hello 
    command: echo hello 
    register: result 
    - command: somecommand {{ result.stdout }} 
    when: result.stdout != "" 
    - command: someothercommand 
    when: result.stdout == "" 
+0

Po prostu zacząłem czytać o używaniu result.stdout == "" w instrukcji when, a następnie odpowiedziałeś. Dziękuję Ci! – ibash