【问题标题】:How can I use default with variable in Ansible?如何在 Ansible 中使用带变量的默认值?
【发布时间】:2026-01-29 22:10:01
【问题描述】:

我知道我可以默认使用简单的硬编码字符串,但我正在尝试这样做:

myvar: "{{ lookup('env','var1') | default("{{var2}}",true) }}"

但它会将其添加为字符串而不是对其进行评估。

【问题讨论】:

    标签: ansible jinja2 ansible-template


    【解决方案1】:

    使用{{ 打开 Jinja2 表达式后,您无需再次打开它(尤其是引用的),您可以通过变量名引用变量:

    myvar: "{{ lookup('env','var1') | default(var2, true) }}"
    

    【讨论】: