2015-05-08 14 views

Odpowiedz

112

Z ansible docs: Jeśli wymagane zmienna nie została ustawiona, można pominąć lub nie stosując Jinja2 zdefiniowana test. Na przykład:

tasks: 

- shell: echo "I've got '{{ foo }}' and am not afraid to use it!" 
    when: foo is defined 

- fail: msg="Bailing out. this play requires 'bar'" 
    when: bar is not defined 

Więc w twoim przypadku, when: deployed_revision is not defined powinien działać

+3

dzięki ten pracował dla mnie 'gdy: deployed_revision nie jest zdefiniowana lub deployed_revision.stdout nie jest zdefiniowana lub deployed_revision.stdout ==„”' – sakhunzai

+3

Możesz także łączyć go z innymi warunkami: 'when: item.sudo jest zdefiniowany i item.sudo == true' – czerasz

+2

Nie rób tego, co zrobiłem, i umieść nawiasy klamrowe wokół foo w' when: foo is defined '(np. to nie działa: 'when: {{foo}} jest zdefiniowane' – David

Powiązane problemy