#! /bin/sh # # Clean kubernetes pods stuck in "Terminating" state # # Example: # # k8s-pods-cleaner.sh hub --yes # if [ -z "$1" ]; then echo "Usage: $0 NAMESPACE [--yes]" exit 0 fi NS="$1" PERFORM="$2" for pod in $(kubectl get pod -n "$NS" | awk 'NR>1 && $3=="Terminating" {print $1}'); do if [ -n "$PERFORM" ]; then kubectl get pod -n "$NS" "$pod" -oyaml > "/tmp/$NS-$pod.yaml" kubectl delete pod -n "$NS" "$pod" --force else kubectl get pod -n "$NS" "$pod" fi done