Ansible 2.4 当 var 被定义并包含
Ansible 2.4 when var is defined and contains
我目前正在编写一个具有多个条件的 ansible 剧本。
我有一个带有 when 条件的 uri 块。 when 条件检查 var 是否已定义并包含 0:
when: (logs_table_exist.stdout == "0") or ("0" in logs_table_old)
现在 logs_table_exist
将始终有一个值,但 logs_table_old
也可以是未定义的。这个 when 条件没有给出错误但它保持为 false,即使 logs_table_old
是 0.
有人知道如何解决这个问题吗?
谢谢
如果您的变量可能未定义,请使用 default
filter:
when: (logs_table_exist.stdout == "0") or ("0" in (logs_table_old | default([])))
我目前正在编写一个具有多个条件的 ansible 剧本。 我有一个带有 when 条件的 uri 块。 when 条件检查 var 是否已定义并包含 0:
when: (logs_table_exist.stdout == "0") or ("0" in logs_table_old)
现在 logs_table_exist
将始终有一个值,但 logs_table_old
也可以是未定义的。这个 when 条件没有给出错误但它保持为 false,即使 logs_table_old
是 0.
有人知道如何解决这个问题吗?
谢谢
如果您的变量可能未定义,请使用 default
filter:
when: (logs_table_exist.stdout == "0") or ("0" in (logs_table_old | default([])))