在播放 ansible 剧本期间,我有一个由 consul 从 consul 返回的数组:
[
{
"Node": {
"Node": "test-eu-west-2-staging-0"
},
"Node": {
"Node": "test-nyc1-staging-0"
},
"Node": {
"Node": "test-sfo1-staging-0"
}
}
]
我想"Node": {"Node" : "hostname"}
在 ansible playbook中对其进行排序
- name: Set TEST vars, servers info and number
set_fact:
TEST_SERVERS="{{ test.json | json_query('SOME SORTING QUERY') }}"
TEST_SRV_NUM="{{ test.json | length }}"
我已经阅读了 JMESPath 和 ansible 文档一整天,但仍然不知道如何实现它(顺便说一句,在 jq 中很容易,sort_by(.Node.Node)
但这个技巧不适用于 ansible)