mirror of
https://github.com/dredx/prole.git
synced 2026-09-23 12:03:59 +00:00
41 lines
1.4 KiB
Bash
41 lines
1.4 KiB
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
export KUBECONFIG=/Users/chrisfu/dev/knoe/knoe-k3s.kubeconfig
|
|
|
|
echo "==> Removing global.nodeSelector so pods spread across cluster..."
|
|
kubectl -n gitea patch gitlab gitlab --type=json -p '[
|
|
{"op":"remove","path":"/spec/chart/values/global/nodeSelector"}
|
|
]' 2>/dev/null || true
|
|
|
|
echo "==> Removing per-component nodeSelectors except gitaly + minio..."
|
|
kubectl -n gitea patch gitlab gitlab --type=merge -p '{
|
|
"spec":{"chart":{"values":{
|
|
"gitlab":{
|
|
"webservice":{"nodeSelector":null},
|
|
"sidekiq":{"nodeSelector":null},
|
|
"toolbox":{"nodeSelector":null},
|
|
"migrations":{"nodeSelector":null},
|
|
"gitlab-exporter":{"nodeSelector":null}
|
|
},
|
|
"registry":{"nodeSelector":null}
|
|
}}}}'
|
|
|
|
echo "==> Force-deleting all stuck Terminating/Pending webservice+sidekiq pods..."
|
|
for pod in $(kubectl -n gitea get pods --no-headers \
|
|
| grep -E "webservice|sidekiq|minio-create" \
|
|
| awk '{print $1}'); do
|
|
kubectl -n gitea delete pod "$pod" --force --grace-period=0 \
|
|
--ignore-not-found 2>/dev/null || true
|
|
done
|
|
|
|
echo "==> Waiting 4min for operator to reconcile and pods to spread..."
|
|
sleep 240
|
|
|
|
echo "==> Final pod status (with node placement):"
|
|
kubectl -n gitea get pods --no-headers \
|
|
| grep -v jemalloc-builder | grep -v Completed \
|
|
| awk '{print $1, $2, $3, $4}' | sort
|
|
|
|
echo "==> GitLab CR phase:"
|
|
kubectl -n gitea get gitlab gitlab -o jsonpath='{.status.phase}' && echo
|