From a11de5efe2a36734de1a879b15205ec6a3c10df8 Mon Sep 17 00:00:00 2001 From: Thomas Dannenberg Date: Tue, 23 Sep 2025 17:36:36 +0000 Subject: [PATCH] Kapitel 13/Tutorial.md aktualisiert --- Kapitel 13/Tutorial.md | 59 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/Kapitel 13/Tutorial.md b/Kapitel 13/Tutorial.md index 9636be0..481f153 100644 --- a/Kapitel 13/Tutorial.md +++ b/Kapitel 13/Tutorial.md @@ -598,6 +598,65 @@ In diesem Schritt erstellen wir den eigentlichen Workflow in **n8n**. Er sorgt d > [!NOTE] > Pro VOD entsteht ein Logfile in `/logs/.log`. Du kannst es live mit `tail -f /logs/.log` verfolgen. + Wer aufmerksam gelesn hat, stellt fest, das dieses Skript nur die halbe MIete ist. Warum machen wird das? Gaz einfach. Im weiteren Verlauf werden wir ein wenig mit den VODs und Clips arbeiten. Wenn wir sie direkt in unserer Nextcloud ablegen würden, müssten wir sie umstänfdlich wieder zurück laden. + + Also legen wir mit ``nano /srv/clipper/bin/cleanup``an und füllen die Datei mit: + + ```bash + #!/usr/bin/env bash +# /usr/local/bin/clipper_cleanup.sh +# Automatisiertes Aufräumen und Archivieren für Clipper-Workflow + +set -euo pipefail + +# ---- .env laden ---- +ENV_FILE="/etc/clipper.env" +[[ -f "$ENV_FILE" ]] || { echo "❌ .env fehlt: $ENV_FILE" >&2; exit 1; } +# shellcheck disable=SC1090 +source "$ENV_FILE" + +# ---- Logging einrichten ---- +TODAY="$(date +%F)" +LOGFILE="${CLIPPER_LOG}/clipper_cleanup_${TODAY}.log" +exec > >(tee -a "$LOGFILE") 2>&1 + +echo "===== Starte Cleanup: $TODAY =====" + +# ---- OUT-Verzeichnis verarbeiten ---- +for VOD_DIR in "${CLIPPER_OUT}"/*/; do + [[ -d "$VOD_DIR" ]] || continue + + VOD_ID=$(basename "$VOD_DIR") + ARCHIVE_PATH="${CLIPPER_OUT}/${VOD_ID}.tar.gz" + + echo "📦 Erstelle Archiv für VOD: $VOD_ID" + tar -czf "$ARCHIVE_PATH" -C "$CLIPPER_OUT" "$VOD_ID" + + echo "🔼 SFTP-Upload: ${ARCHIVE_PATH} → ${SFTP_DROP_BASE}/${VOD_ID}.tar.gz" + sftp -i "$SFTP_KEY" -P "$SFTP_PORT" -oStrictHostKeyChecking=no "$SFTP_USER@$SFTP_HOST" < hochgeladen hat, müssen wir diese Dateien an den endgültigen Platz in Nextcloud verschieben. Nur so erscheinen sie auch im Web-Interface. Genau dafür legen wir jetzt ein Skript an, das automatisch aufgerufen werden kann.