我有这个 ansible (working) playbook,它查看kubectl get pods -o jsonpod的输出,直到 pod 处于该Running状态。现在我想将其扩展到多个 Pod。核心问题是kubectl查询的json结果是一个列表,我知道如何访问第一项,但不是所有的项...
- name: wait for pods to come up
shell: kubectl get pods -o json
register: kubectl_get_pods
until: kubectl_get_pods.stdout|from_json|json_query('items[0].status.phase') == "Running"
retries: 20
Run Code Online (Sandbox Code Playgroud)
json 对象看起来像,
[ { ... "status": { "phase": "Running" } },
{ ... "status": { "phase": "Running" } },
...
]
Run Code Online (Sandbox Code Playgroud)
使用[0]访问处理列表中的一个对象合作的第一个项目,但我无法弄清楚如何将其扩展到多个项目。我试过[*]哪个不起作用。