#!/usr/bin/env bash # Delete all ReplicaSets with 0 desired replicas (stale rollout history) set -euo pipefail deleted=0 while IFS= read -r line; do ns=$(echo "$line" | awk '{print $1}') name=$(echo "$line" | awk '{print $2}') kubectl delete rs "$name" -n "$ns" --ignore-not-found >/dev/null 2>&1 && \ echo "Deleted $ns/$name" && deleted=$((deleted+1)) done < <(kubectl get rs -A --no-headers | awk '$3=="0" {print $1, $2}') echo "--- Total deleted: $deleted ---"