mirror of
https://github.com/dredx/prole.git
synced 2026-09-23 12:03:59 +00:00
77 lines
2.6 KiB
Bash
77 lines
2.6 KiB
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
KUBECONFIG=/Users/chrisfu/dev/knoe/knoe-k3s.kubeconfig
|
|
export KUBECONFIG
|
|
KB="kubectl"
|
|
|
|
echo "==> Uninstalling stuck Redis release..."
|
|
helm -n knoe-system uninstall redis 2>/dev/null || true
|
|
$KB -n knoe-system delete pvc redis-data-redis-master-0 --ignore-not-found
|
|
|
|
echo "==> Redeploying Redis without persistence..."
|
|
cd /Users/chrisfu/dev/knoe
|
|
bash etc/init_redis.sh -c conf/service/knoe.cfg start
|
|
|
|
echo "==> Redis deployed. Checking gitaly/minio PVC sizes..."
|
|
$KB -n gitlab get pvc repo-data-gitlab-gitaly-0 gitlab-minio -o custom-columns='NAME:.metadata.name,SIZE:.spec.resources.requests.storage,SC:.spec.storageClassName' 2>&1 || true
|
|
|
|
echo "==> Preparing synology dirs for gitaly and minio on gandalf..."
|
|
$KB -n knoe-system run gitlab-dirprep --image=alpine --restart=Never \
|
|
--overrides='{"spec":{"nodeName":"gandalf.knoe.org"}}' \
|
|
--command -- sh -c "mkdir -p /synology/d005/gitlab/gitaly /synology/d005/gitlab/minio && chmod 777 /synology/d005/gitlab/gitaly /synology/d005/gitlab/minio && echo done" \
|
|
--attach --rm 2>&1 || true
|
|
|
|
echo "==> Creating static PVs for gitaly and minio..."
|
|
GITALY_SIZE=$($KB -n gitlab get pvc repo-data-gitlab-gitaly-0 -o jsonpath='{.spec.resources.requests.storage}' 2>/dev/null || echo "50Gi")
|
|
MINIO_SIZE=$($KB -n gitlab get pvc gitlab-minio -o jsonpath='{.spec.resources.requests.storage}' 2>/dev/null || echo "10Gi")
|
|
echo "Gitaly PVC size: $GITALY_SIZE | Minio PVC size: $MINIO_SIZE"
|
|
|
|
$KB apply -f - <<PVYAML
|
|
apiVersion: v1
|
|
kind: PersistentVolume
|
|
metadata:
|
|
name: gitlab-gitaly-synology
|
|
spec:
|
|
capacity:
|
|
storage: ${GITALY_SIZE}
|
|
accessModes: [ReadWriteOnce]
|
|
persistentVolumeReclaimPolicy: Retain
|
|
storageClassName: synology-iscsi
|
|
local:
|
|
path: /synology/d005/gitlab/gitaly
|
|
nodeAffinity:
|
|
required:
|
|
nodeSelectorTerms:
|
|
- matchExpressions:
|
|
- key: kubernetes.io/hostname
|
|
operator: In
|
|
values: [gandalf.knoe.org]
|
|
---
|
|
apiVersion: v1
|
|
kind: PersistentVolume
|
|
metadata:
|
|
name: gitlab-minio-synology
|
|
spec:
|
|
capacity:
|
|
storage: ${MINIO_SIZE}
|
|
accessModes: [ReadWriteOnce]
|
|
persistentVolumeReclaimPolicy: Retain
|
|
storageClassName: synology-iscsi
|
|
local:
|
|
path: /synology/d005/gitlab/minio
|
|
nodeAffinity:
|
|
required:
|
|
nodeSelectorTerms:
|
|
- matchExpressions:
|
|
- key: kubernetes.io/hostname
|
|
operator: In
|
|
values: [gandalf.knoe.org]
|
|
PVYAML
|
|
|
|
echo "==> Deleting stuck PVCs so they rebind to new PVs..."
|
|
$KB -n gitlab delete pvc repo-data-gitlab-gitaly-0 gitlab-minio --ignore-not-found
|
|
|
|
echo "==> Done. Waiting 20s for PVCs to rebind..."
|
|
sleep 20
|
|
$KB -n gitlab get pvc,pods 2>&1
|