fix: seed observability dependencies
Deploy Cluster / Terraform (push) Successful in 31s
Deploy Cluster / Ansible (push) Has been cancelled

This commit is contained in:
2026-04-26 10:32:25 +00:00
parent daf6ccd0e4
commit 499a3462e7
330 changed files with 97287 additions and 19 deletions
+41 -6
View File
@@ -420,7 +420,17 @@ jobs:
oci.external-secrets.io/external-secrets/external-secrets:v2.1.0 \
ghcr.io/tailscale/k8s-operator:v1.96.5 \
ghcr.io/tailscale/tailscale:v1.96.5 \
registry.k8s.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2; do
registry.k8s.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2 \
docker.io/grafana/loki:3.5.7 \
docker.io/kiwigrid/k8s-sidecar:1.30.10 \
docker.io/grafana/promtail:3.0.0 \
docker.io/rancher/mirrored-library-traefik:3.6.10 \
docker.io/grafana/grafana:11.4.0 \
quay.io/prometheus-operator/prometheus-operator:v0.79.2 \
quay.io/prometheus-operator/prometheus-config-reloader:v0.79.2 \
quay.io/prometheus/prometheus:v3.1.0 \
registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.14.0 \
quay.io/prometheus/node-exporter:v1.8.2; do
prepare_image_archive "${image}"
done
@@ -545,6 +555,15 @@ jobs:
exit 1"
}
import_required_image_on_all_nodes() {
local image="$1"
local host_ip
for host_ip in ${ALL_NODE_IPS}; do
import_required_image "${image}" "${host_ip}"
done
}
eso_diagnostics() {
kubectl -n flux-system get kustomizations,ocirepositories,helmrepositories,helmcharts,helmreleases || true
kubectl -n flux-system describe kustomization addon-external-secrets || true
@@ -672,6 +691,7 @@ jobs:
--from-file=known_hosts=/tmp/flux_known_hosts \
--dry-run=client -o yaml | kubectl apply -f -
PRIMARY_CP_IP=$(python3 -c 'import json; print(json.load(open("outputs/terraform_outputs.json"))["primary_control_plane_ip"]["value"])')
ALL_NODE_IPS=$(python3 -c 'import json; outputs = json.load(open("outputs/terraform_outputs.json")); print(" ".join(outputs["control_plane_ips"]["value"] + outputs["worker_ips"]["value"]))')
for image in \
ghcr.io/fluxcd/source-controller:v1.8.0 \
ghcr.io/fluxcd/kustomize-controller:v1.8.1 \
@@ -679,6 +699,19 @@ jobs:
ghcr.io/fluxcd/notification-controller:v1.8.1; do
import_required_image "${image}" "${PRIMARY_CP_IP}"
done
for image in \
docker.io/grafana/loki:3.5.7 \
docker.io/kiwigrid/k8s-sidecar:1.30.10 \
docker.io/grafana/promtail:3.0.0 \
docker.io/rancher/mirrored-library-traefik:3.6.10 \
docker.io/grafana/grafana:11.4.0 \
quay.io/prometheus-operator/prometheus-operator:v0.79.2 \
quay.io/prometheus-operator/prometheus-config-reloader:v0.79.2 \
quay.io/prometheus/prometheus:v3.1.0 \
registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.14.0 \
quay.io/prometheus/node-exporter:v1.8.2; do
import_required_image_on_all_nodes "${image}"
done
# Apply CRDs and controllers first
kubectl apply -f clusters/prod/flux-system/gotk-components.yaml
# Wait for CRDs to be established
@@ -1010,11 +1043,13 @@ jobs:
kubectl -n flux-system wait --for=condition=Ready kustomization/addon-rancher-backup --timeout=300s
kubectl -n flux-system wait --for=condition=Ready kustomization/addon-rancher-backup-config --timeout=300s
reconcile_at=$(date +%s)
kubectl -n flux-system annotate helmrelease/kube-prometheus-stack \
reconcile.fluxcd.io/requestedAt="${reconcile_at}" \
reconcile.fluxcd.io/resetAt="${reconcile_at}" \
reconcile.fluxcd.io/forceAt="${reconcile_at}" \
--overwrite
for release in kube-prometheus-stack loki promtail; do
kubectl -n flux-system annotate "helmrelease/${release}" \
reconcile.fluxcd.io/requestedAt="${reconcile_at}" \
reconcile.fluxcd.io/resetAt="${reconcile_at}" \
reconcile.fluxcd.io/forceAt="${reconcile_at}" \
--overwrite
done
kubectl -n flux-system annotate kustomization/addon-observability \
reconcile.fluxcd.io/requestedAt="${reconcile_at}" \
--overwrite