#!/usr/bin/env bash set -euo pipefail export KUBECONFIG=/Users/chrisfu/dev/knoe/knoe-k3s.kubeconfig echo "==> Previous minio crash log:" kubectl -n gitlab logs gitlab-minio-65b8ddcd4d-5xlgc --previous 2>&1 | \ grep -v "LD_PRELOAD" | head -30 || true echo "==> Switching to 2022 quay.io minio (supports MINIO_ACCESS_KEY + ARM64)..." # Also remove the MINIO_ROOT_USER/PASSWORD extraEnv — the 2022 image reads MINIO_ACCESS_KEY kubectl -n gitlab patch gitlab gitlab --type=json -p '[ {"op":"remove","path":"/spec/chart/values/minio/extraEnv"} ]' 2>/dev/null || true kubectl -n gitlab patch gitlab gitlab --type=merge -p '{ "spec":{"chart":{"values":{ "minio":{ "image":"quay.io/minio/minio", "imageTag":"RELEASE.2022-10-08T20-11-00Z" } }}}}' echo "==> Wiping stale minio export data and restarting pod..." kubectl -n gitlab run minio-wipe \ --image=alpine:latest --restart=Never --rm \ --overrides='{ "spec":{"nodeName":"gandalf.knoe.org","tolerations":[{"operator":"Exists"}], "volumes":[{"name":"e","hostPath":{"path":"/synology/d005/gitlab/minio","type":"Directory"}}], "containers":[{"name":"minio-wipe","image":"alpine:latest", "command":["sh","-c","rm -rf /e/.minio.sys /e/registry && echo wiped"], "volumeMounts":[{"name":"e","mountPath":"/e"}]}]}}' 2>&1 || true kubectl -n gitlab delete pod -l app=minio --ignore-not-found kubectl -n gitlab delete jobs -l app=minio-create-buckets --ignore-not-found echo "==> Waiting 90s..." sleep 90 echo "==> Pod status:" kubectl -n gitlab get pods --sort-by=.metadata.creationTimestamp | grep -v jemalloc-builder echo "==> Minio logs:" kubectl -n gitlab logs -l app=minio --tail=10 2>&1 | grep -v "LD_PRELOAD" || true