虽然这应该是一个小问题,但我无法理解这一点。Ansible/Jinja中的词典和打印值过滤器列表
我使用Ansible(和神社模板)建立一个模板,我有一个像字典(这里显示为JSON)的列表:
"datacenters": [{
"description": "Main Datacenter",
"name": "main"
}, {
"description": "Secondaty Datacenter",
"name": "secondary"
}]
而且我想通过名称的打印过滤描述。在我的模板,我可以起床到这里:
{{ datacenters | selectattr("name", "equalto", "main") | list | first | to_nice_json }}
与输出:
{
"description": "Main Datacenter",
"name": "main"
}
但我不能得到公正description
。例如,当我使用:
{{ datacenters | selectattr("name", "equalto", "main") | list | first | attr("description") }}
我得到:
AnsibleUndefinedVariable: 'unicode object' has no attribute 'description'
我发现这个链接https://github.com/ansible/ansible/issues/19356谷歌搜索的错误,但我不加载从清单中的变量。 任何想法如何解决这个问题?
更好,如果我不告诉你我花了多少时间....谢谢。 – ColOfAbRiX