mirror of
https://github.com/dredx/prole.git
synced 2026-09-23 12:03:59 +00:00
25 lines
888 B
Bash
25 lines
888 B
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
export KUBECONFIG=/Users/chrisfu/dev/knoe/knoe-k3s.kubeconfig
|
|
|
|
echo "==> Resources blocking termination:"
|
|
kubectl -n gitlab get all --ignore-not-found 2>&1 | head -20 || true
|
|
|
|
echo "==> Force-removing finalizers from stuck GitLab CRs..."
|
|
for res in $(kubectl -n gitlab get gitlabs.apps.gitlab.com --no-headers -o name 2>/dev/null || true); do
|
|
kubectl -n gitlab patch "$res" -p '{"metadata":{"finalizers":[]}}' --type=merge 2>/dev/null || true
|
|
done
|
|
|
|
echo "==> Forcing namespace finalizer removal via API..."
|
|
kubectl get namespace gitlab -o json 2>/dev/null | \
|
|
python3 -c "
|
|
import sys, json
|
|
d = json.load(sys.stdin)
|
|
d['spec']['finalizers'] = []
|
|
print(json.dumps(d))
|
|
" | kubectl replace --raw /api/v1/namespaces/gitlab/finalize -f - 2>&1 || true
|
|
|
|
sleep 10
|
|
echo "==> Namespace status:"
|
|
kubectl get ns gitlab 2>&1 || echo "Namespace gone — clean."
|