Files
htpc/rollback_jellyfin_migration.sh
bart bba3a09cfe
Sync HTPC Manifests to GitOps / Sync Manifests to GitOps Repo (push) Successful in 4s
feat(jellyfin): add kubernetes manifests and migration scripts
2026-11-07 10:44:11 +01:00

44 lines
1.8 KiB
Bash
Executable File

#!/usr/bin/env bash
# ==============================================================================
# Jellyfin Rollback Script: Kubernetes -> Host Standalone jellyfin.service
# ==============================================================================
set -euo pipefail
CLUSTER_HOST="10.2.0.4"
SSH_USER="bart"
HTPC_NS="htpc"
KUBECONFIG_PATH="${KUBECONFIG:-$HOME/.kube/config_vmserver}"
COLOR_GREEN="\033[0;32m"
COLOR_YELLOW="\033[1;33m"
COLOR_RED="\033[0;31m"
COLOR_BLUE="\033[0;34m"
COLOR_RESET="\033[0m"
log_info() { echo -e "${COLOR_GREEN}[INFO]${COLOR_RESET} $1"; }
log_step() { echo -e "\n${COLOR_BLUE}==>${COLOR_RESET} ${COLOR_GREEN}$1${COLOR_RESET}"; }
log_warn() { echo -e "${COLOR_YELLOW}[WARN]${COLOR_RESET} $1"; }
echo "========================================================================"
echo " JELLYFIN ROLLBACK NAAR STANDALONE SERVICE OP $CLUSTER_HOST"
echo "========================================================================"
read -p "Weet je zeker dat je wilt terugrollen naar standalone jellyfin? (j/N): " -r CONFIRM
if [[ ! "$CONFIRM" =~ ^[jJyY]$ ]]; then
log_info "Rollback geannuleerd."
exit 0
fi
log_step "1. Kubernetes Jellyfin deployment schalen naar 0..."
KUBECONFIG="${KUBECONFIG_PATH}" kubectl scale deployment/jellyfin -n "${HTPC_NS}" --replicas=0 || true
log_step "2. Standalone jellyfin.service inschakelen en starten op $CLUSTER_HOST..."
ssh -t "${SSH_USER}@${CLUSTER_HOST}" "sudo systemctl enable --now jellyfin"
log_step "3. Status controleren..."
sleep 5
ssh -o BatchMode=yes "${SSH_USER}@${CLUSTER_HOST}" "systemctl status jellyfin --no-pager" | head -n 12
ssh -o BatchMode=yes "${SSH_USER}@${CLUSTER_HOST}" "curl -I -s http://127.0.0.1:8096/jellyfin/health" | head -n 1
echo ""
log_info "Rollback voltooid. Standalone jellyfin.service is weer actief op de host."