【发布时间】:2021-09-01 23:38:36
【问题描述】:
我需要有条件地转换 JSON 文件中定义的对象列表。剧本的问题是我需要转换以产生docker.network 或id 的值。简单地说,我需要找出某种三元运算符来转换列表。该剧本的结果是:
"msg": "['baz', AnsibleUndefined]"
我需要
"msg": "['baz', 'bar']"
剧本:
vars:
daemons: "{{ lookup('file','./test.json') | from_json }}"
tasks:
- name: Transform
debug:
msg: "{{ daemons | map(attribute='docker.network') }}"
test.json:
[
{
"id": "foo",
"docker": {
"network": "baz"
}
},
{
"id": "bar",
"docker": {
}
}
]
【问题讨论】: