如何解决Ansible:附加到字典会跳过重复的键名
我正在尝试从寄存器输出result.containers填充字典,恰巧会覆盖具有相同值的item.Image。 这是我的输出。
"result.containers": [
{
"Image": "lna-docker/webproxy:2.4.0","Names": [
"/se-webproxyui-dev-01"
],},{
"Image": "lna-docker-dev-local/webproxy:1.8.1","Names": [
"/se-webproxy-dev-01"
],{
"Image": "docker-release/consul:1.0.1","Names": [
"/consul-client"
],{
"Image": "docker.dev/webproxy:0.6.1","Names": [
"/webproxy-dev-01"
],]
}
这是我的代码。
- name: Populate dictonary for containerup
set_fact:
containeruplist: "{{ containeruplist|default({}) | combine({item.Image.split('/')[-1].split(':')[0]:item.Names[0][1:]} ) }}"
loop: "{{ result.containers }}"
这是我的输出
ok: [VM3node.lite.com] => {
"containeruplist": {
"consul": "consul-client","webproxy": "webproxy-dev-01"
}
}
我正在尝试从寄存器输出result.containers
填充字典,该输出恰巧会覆盖具有相同值的item.Image。任何帮助将不胜感激。
理想情况下,我应该低于输出。它覆盖了前两个item.Image,其值为“ webroxy”。有人可以帮助我实现以下目标吗?
containeruplist": {
"webproxy":"se-webproxyui-dev-01"
"webproxy":"se-webproxy-dev-01"
"consul": "consul-client","webproxy": "webproxy-dev-01"
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。