我正在编写Ansible play,其中一项任务是将条目附加到JSON文档。例如。使用jq附加从Ansible模板生成的输出
JSON文件staff.json
:
{
"staff":[
{
"john":[
{
"position":"techwriter"
},
{
"sex":"male"
}
]
}
]
}
我需要追加此项以staff
:
{
"staff":[
{
"john":[
{
"position":"techwriter"
},
{
"sex":"male"
}
]
},
{
"jane":[
{
"position":"admin"
},
{
"sex":"female"
}
]
}
]
}
条目将从Ansible template
,像这样产生:
{
"{{ staff_name }}":[
{
"position":"{{ staff_position }}"
},
{
"sex":"{{ staff_sex }}"
}
]
}
我学会了使用jq
到append entry添加到JSON文档中,如“Add json array element with jq (cmdline)”中所示。但是,我不知道如何在Ansible中实现这一点,因为模板会输出到文件中。
我需要这样的东西的解决方案:
cat staff.json | jq '.staff |= .+ ["OUTPUT_FROM_TEMPLATE"]'
任何想法表示欢迎。
我删除了jq标签,因为您没有要求jq解决方案。 –