feat(jellyfin): add kubernetes manifests and migration scripts
Sync HTPC Manifests to GitOps / Sync Manifests to GitOps Repo (push) Successful in 4s

This commit is contained in:
bart
2026-11-07 10:44:11 +01:00
parent 3ab3a5f84b
commit bba3a09cfe
9 changed files with 409 additions and 0 deletions
+43
View File
@@ -0,0 +1,43 @@
#!/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."