jinja/ansible 将字符串转换为布尔值

ako*_*nov 5 jinja2 python-3.x ansible

我需要简单的事情 - 如果变量是false或空字符串,则评估为false. 否则评估为真。

我试过了,bool(var)但我得到:

UndefinedError: 'bool' is undefined
Run Code Online (Sandbox Code Playgroud)

然后我试过了,var | bool但即使 var 不为空,它的计算结果也是false. 如何使该条件起作用?

ako*_*nov 4

我找到了红宝石风格的可能解决方案:

    when: not not var
Run Code Online (Sandbox Code Playgroud)

但它比较丑陋。忘了说,如果没有not notvar,则计算结果为字符串,因此会出现 ansible 错误。我希望得到更好的答案,因此如果有的话请添加另一个答案。