fix: avoid Helm wait hang and use explicit Loki rollout check
This commit is contained in:
@@ -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:
|
||||
|
||||
Reference in New Issue
Block a user