【发布时间】:2021-11-01 04:32:59
【问题描述】:
我在 ansible 模板中有以下内容。
{% if value.http_requests is defined %}
{% for http_request in value.http_requests %}
http-request {{ http_request }}
{% endfor %}
{% endif %}
http_requests 通常在 playbook 中定义如下:
http_requests:
- randomhttprequest
如果变量已定义但列表为空,则模板将显示没有值的 http-request。
即使像这样将 http_requests 列表留空,我也正在努力寻找使剧本失败的方法
http_requests:
-
-
我尝试过使用长度而不是无,但我似乎无法让它发挥作用。
【问题讨论】:
-
我不认为这是一个空变量,而是一个包含两个空字符串的列表。
-
抱歉,你是对的,我刚开始学习这些东西。问题仍然是一个空列表
-
如果列表为空,您是否要故意使 playbook 失败?
-
@RafadeBoas 是的
-
@user3925030 在您的“空”列表示例中,该列表实际上不是空的。它由两个空列表组成……换句话说:
http_requests = [[], []]。