fix: quote kube-vip readiness jsonpath in bootstrap role
Deploy Cluster / Terraform (push) Successful in 27s
Deploy Cluster / Ansible (push) Failing after 10m11s

The local kube-vip readiness probe used an unquoted jsonpath predicate,
which made kubectl treat Ready as an identifier instead of a string. Use a
quoted jsonpath via shell so bootstrap can detect the primary kube-vip pod
properly before waiting on the API VIP.
This commit is contained in:
2026-04-22 04:41:48 +00:00
parent 6519a7673d
commit c32bec34bc
+2 -2
View File
@@ -10,11 +10,11 @@
changed_when: true changed_when: true
- name: Wait for local kube-vip pod to be ready - name: Wait for local kube-vip pod to be ready
command: >- shell: >-
kubectl -n kube-system get pods kubectl -n kube-system get pods
-l app.kubernetes.io/name=kube-vip -l app.kubernetes.io/name=kube-vip
--field-selector spec.nodeName={{ inventory_hostname }} --field-selector spec.nodeName={{ inventory_hostname }}
-o jsonpath={.items[0].status.conditions[?(@.type=="Ready")].status} -o jsonpath='{.items[0].status.conditions[?(@.type=="Ready")].status}'
register: kube_vip_pod_ready register: kube_vip_pod_ready
changed_when: false changed_when: false
until: kube_vip_pod_ready.stdout == "True" until: kube_vip_pod_ready.stdout == "True"