Ansible 2.4, когда переменная определена и содержит - PullRequest
0 голосов
/ 11 декабря 2019

Я сейчас пишу сборник пьес с несколькими условиями. У меня есть блок URI с условием когда. Условие when проверяет, определена ли переменная и содержит ли она 0:

when: (logs_table_exist.stdout == "0") or ("0" in logs_table_old)

Теперь logs_table_exist всегда будет иметь значение, но logs_table_old также может быть неопределенным. Это когда условие не выдает ошибки, но остается ложным, даже если logs_table_old равно 0.

Кто-нибудь знает, как решить эту проблему?

Спасибо

1 Ответ

0 голосов
/ 11 декабря 2019

Если есть вероятность, что ваша переменная может быть неопределенной, используйте фильтр default :

when: (logs_table_exist.stdout == "0") or ("0" in (logs_table_old | default([])))

...