我正在尝试在jinja中创建以下循环:
variable: >
[
{% for replaceme in list %}
{
'name': "{{ "string-{{replaceme}}" if replaceme == 'somevalue' else "string-something-{{replaceme}}" }}",
'sshKey': "{{ lookup(...) }}"
}
{% if not loop.last %},{% endif %}
{% endfor %}
]
但这不起作用,任何想法?我尝试了不同的引号,不同的curlies组合等。
答案 0 :(得分:5)
不允许使用嵌套{{..}}
。
尝试:{{ "string-"+replaceme if replaceme == 'somevalue' else "string-something"+replaceme }}
答案 1 :(得分:0)
您可以使用 string formatting operator。
[
{% for item in list %}
{'name': {{ "s1-%s" % item }} },
{% endfor %}
]