fix: avoid Helm wait hang and use explicit Loki rollout check
Some checks failed
Deploy Cluster / Terraform (push) Successful in 48s
Deploy Cluster / Ansible (push) Failing after 19m27s

This commit is contained in:
2026-03-02 03:35:31 +00:00
parent 27711e0661
commit 2a583d1bba

View File

@@ -72,32 +72,38 @@
--namespace {{ observability_namespace }}
--version {{ loki_chart_version }}
--values /tmp/loki-values.yaml
--wait
--timeout 20m
--create-namespace
register: loki_install
failed_when: false
changed_when: true
- name: Wait for Loki statefulset rollout
command: kubectl -n {{ observability_namespace }} rollout status statefulset/loki --timeout=10m
register: loki_rollout
failed_when: false
changed_when: false
when: loki_install.rc == 0
- name: Show Loki pods on install failure
command: kubectl -n {{ observability_namespace }} get pods -l app.kubernetes.io/name=loki -o wide
register: loki_pods_status
changed_when: false
failed_when: false
when: loki_install.rc != 0
when: loki_install.rc != 0 or (loki_rollout.rc | default(1)) != 0
- name: Show observability PVCs on Loki install failure
command: kubectl -n {{ observability_namespace }} get pvc -o wide
register: loki_pvc_status
changed_when: false
failed_when: false
when: loki_install.rc != 0
when: loki_install.rc != 0 or (loki_rollout.rc | default(1)) != 0
- name: Get Loki pod name on install failure
shell: kubectl -n {{ observability_namespace }} get pods -l app.kubernetes.io/name=loki -o jsonpath='{.items[0].metadata.name}'
register: loki_pod_name
changed_when: false
failed_when: false
when: loki_install.rc != 0
when: loki_install.rc != 0 or (loki_rollout.rc | default(1)) != 0
- name: Describe Loki pod on install failure
command: kubectl -n {{ observability_namespace }} describe pod {{ loki_pod_name.stdout }}
@@ -105,7 +111,7 @@
changed_when: false
failed_when: false
when:
- loki_install.rc != 0
- loki_install.rc != 0 or (loki_rollout.rc | default(1)) != 0
- loki_pod_name.stdout | length > 0
- name: Show Loki pod logs on install failure
@@ -114,7 +120,7 @@
changed_when: false
failed_when: false
when:
- loki_install.rc != 0
- loki_install.rc != 0 or (loki_rollout.rc | default(1)) != 0
- loki_pod_name.stdout | length > 0
- name: Show observability events on Loki install failure
@@ -122,7 +128,7 @@
register: loki_events
changed_when: false
failed_when: false
when: loki_install.rc != 0
when: loki_install.rc != 0 or (loki_rollout.rc | default(1)) != 0
- name: Fail with Loki diagnostics
fail:
@@ -131,6 +137,9 @@
Helm stderr:
{{ loki_install.stderr | default('') }}
Rollout status stderr:
{{ loki_rollout.stderr | default('') }}
Loki pods:
{{ loki_pods_status.stdout | default('n/a') }}
@@ -145,7 +154,7 @@
Events:
{{ loki_events.stdout | default('n/a') }}
when: loki_install.rc != 0
when: loki_install.rc != 0 or (loki_rollout.rc | default(1)) != 0
- name: Write Promtail values
template: