【发布时间】:2021-09-09 20:51:52
【问题描述】:
我有这个 JSON:
[{
"${foo1}": "somevalue1",
"${foo2}": "somevalue2"
}, {
"${zoo1}": "somevalue111",
"${zoo2}": "somevalue222"
}]
我需要在 ansible 和 JSON 数组中的每个对象中循环每个键/对值 我喜欢检查文件中是否存在密钥并将其替换为值。 例如: 如果在文件中我有
key1=${foo1}
它将被替换为
key1=somevalue1
我曾经有硬编码的 ansible 任务:
replace:
path: "/myfile.txt"
regexp: "{{ item.regexp }}"
replace: "{{ item.replace }}"
with_items:
- { regexp: '${foo1}', replace: "new_value" }
我喜欢根据给定的 JSON 将其转换为动态搜索和替换
我像这样捕获 JSON :(这是修剪 YAML)
---
-
gather_facts: false
hosts: localhost
name: test
tasks:
- name: debug
debug:
msg: "{{ AAA| to_json }}"
- name: set fact
set_fact:
multi_parms: "{{ AAA| to_json }}"
- name: debug multi_parms
debug:
var: multi_parms
【问题讨论】:
-
你怎么告诉
key1应该是你的钥匙?只是有key字符串加上index?或者所有的键名都可以是key?