在我的 ansible 剧本中,我试图过滤一个 json 结果,但现在它不起作用。
1/ Playbook
下面我的 ansible playbook 来查询和过滤结果:
tasks:
- name: "Query Attributes"
...
...
register: query_result
- name: Display Result
debug:
var: query_result
- name: Display Filtered Result
debug:
msg: "{{ query_result.current| json_query('[].context.attributes[?name==`prod`].name') }}"
也许我的 json_query 过滤器内部有问题?
任何想法 ?
2/ 过滤前查询结果输出
TASK [Display Result] ***************************************************
"query_result": {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": false,
"current": [
{
"context": {
"attributes": {
"name": "prod",
"uid": "11756"
}
}
},
{
....
}
}
},
{
"context": {
"attributes": {
"name": "dev",
"uid": "14424"
}
}
}
],
"failed": false
}
}
*****************************
3/过滤结果为空
不幸的是我的结果是空的。
TASK [Display Filtered Result] **********************************************************
{
"msg": []
}
谢谢
朱