Skip to content

Instantly share code, notes, and snippets.

@joshisa
Forked from sheppduck/sc8l_d3l3te.sh
Created February 29, 2020 22:54
Show Gist options
  • Save joshisa/0ba36138d1f69194dfc6e36b3f89c3b3 to your computer and use it in GitHub Desktop.
Save joshisa/0ba36138d1f69194dfc6e36b3f89c3b3 to your computer and use it in GitHub Desktop.
#!/bin/bash
# Scale DOWN all Turbonetes PODs to 0
function turbo_stop_all_pods {
turbo_stop_all_pods=$(kubectl get deploy -n turbonomic --no-headers=true | cut -d ' ' -f1 | xargs -I % kubectl scale --replicas=0 deployment/% -n turbonomic)
while true; do
if `kubectl get pods -n turbonomic | grep -v STATUS | wc -l` -gt 0 then
echo -e "turbo_STOP_all_pods: Waiting on Turbonetes POD(s) to TERMINATE, so far: \n`kubectl get pods -n turbonomic | grep -v NAME`"
elif
[[ "$counter" -gt 30 ]]; then;
echo "MAX Counter Reached! One or more PODs are stuck ##TERMINATING##, intervening to kill it/them"
for p in $(kubectl get pods | grep Terminating | awk '{print $1}') ; do kubectl delete pod $p --grace-period=0 --force ; done
else
counter=$((counter++))
echo "Counter has tried: $counter time(s), (30 - $counter) Attempts Remain!!"
sleep 15
fi
done
echo "All Turbonetes PODs are Terminated - Done waiting, exiting"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment