【发布时间】:2021-01-11 03:27:52
【问题描述】:
我需要根据几个条件在ansible中定义一个变量
我知道语法
VARtodefined: "{{ 'Value1' if condition1 else 'Value2' }}"
我知道我使用以下其他语法得到相同的结果
VARtodefined: "{% if condition1 %}'Value1'{% else %}'Value2'{% endif %}"
但我没有找到多个条件的正确语法(if-elsif-elsif-else)
例如我试过这个没有成功
VARtodefined: "{% if condition1 %}'Value1'{% elsif condition2 %}'Value2'{% else %}'Value3'{% endif %}"
如果尝试过使用elif, elseif 的变体,但也没有成功
在我的具体情况下,条件 1 是 OtherVar==XXX 和条件 2 OtherVar==YYY(所以在这两种情况下,它都取决于 OtherVar 的值)
所以我正在为此寻找可行的解决方案
VARtodefined: "{% if OtherVar==XXX %}'Value1'{% elsif OtherVar==YYY%}'Value2'{% else %}'Value3'{% endif %}"
如果找到了实现我的目标的解决方法,但我有兴趣了解未来项目的正确语法
【问题讨论】:
标签: if-statement syntax ansible yaml conditional-statements