如何在没有警告的情况下检查是否定义了多个ansible变量?

时间:2017-11-24 13:50:14

标签: ansible jinja2

我在角色的开头有一个任务:

- name: check if pg_* variables are defined
  fail: msg="variable {{item}} is undefined"
  when: "{{item}} is undefined"
  with_items:
    - pg_dbname
    - pg_host
    - pg_port
    - pg_username
    - pg_password

但较新版本的Ansible引发了以下警告:

  

[警告]:when语句不应包含jinja2模板分隔符,例如{{}}或{%%}。找到: {{item}}未定义

删除Jinja2大括号when: item is undefined不起作用,因为最终评估基本上等同于:

"pg_dbname" is undefined` # False
"pg_host" is undefined` # False
.
.
"pg_password" is undefined` # False

这不是我想要的。

0 个答案:

没有答案