railiance-cluster/tests/smoke_kube.sh

42 lines
2 KiB
Bash
Raw Normal View History

2025-09-12 01:46:14 +02:00
#!/usr/bin/env bash
set -euo pipefail
PASS=0
FAIL=0
ok() { echo "[OK] $*"; ((PASS++)) || true; }
fail() { echo "[FAIL] $*"; ((FAIL++)) || true; }
# ── Node Ready ───────────────────────────────────────────────────────────────
if kubectl get nodes 2>/dev/null | grep -q " Ready"; then
ok "Node(s) in Ready state"
else
fail "No nodes in Ready state"
fi
# ── Helm ─────────────────────────────────────────────────────────────────────
if helm version --short &>/dev/null; then
ok "helm version: $(helm version --short)"
else
fail "helm not available or erroring"
fi
# ── CoreDNS ──────────────────────────────────────────────────────────────────
if kubectl get pods -n kube-system -l k8s-app=kube-dns 2>/dev/null | grep -q "Running"; then
ok "CoreDNS pod running in kube-system"
else
fail "CoreDNS pod not running in kube-system"
fi
# ── Traefik ──────────────────────────────────────────────────────────────────
if kubectl get pods -n kube-system -l app.kubernetes.io/name=traefik 2>/dev/null | grep -q "Running"; then
ok "Traefik ingress controller running in kube-system"
else
fail "Traefik ingress controller not running in kube-system"
fi
# ── Summary ──────────────────────────────────────────────────────────────────
echo ""
echo "Results: ${PASS} passed, ${FAIL} failed"
[[ "$FAIL" -eq 0 ]]