summaryrefslogtreecommitdiff
path: root/sync_tt_to_minio.sh
diff options
context:
space:
mode:
authordoc <doc@filenotfound.org>2025-09-16 11:30:38 +0000
committerdoc <doc@filenotfound.org>2025-09-16 11:30:38 +0000
commit5cfeb2cf156705349730bdc6ce883fd8eb22e728 (patch)
tree13758f78513ed74198d2257c11c0ef9a913725d1 /sync_tt_to_minio.sh
first commitHEADmaster
Diffstat (limited to 'sync_tt_to_minio.sh')
-rwxr-xr-xsync_tt_to_minio.sh37
1 files changed, 37 insertions, 0 deletions
diff --git a/sync_tt_to_minio.sh b/sync_tt_to_minio.sh
new file mode 100755
index 0000000..75512ce
--- /dev/null
+++ b/sync_tt_to_minio.sh
@@ -0,0 +1,37 @@
+#!/bin/bash
+
+# === CONFIG ===
+MINIO_HOST="shredder.sshjunkie.com" # Use IP if DNS doesn't resolve
+MINIO_PORT="9000"
+ACCESS_KEY="genesisadmin"
+SECRET_KEY="MutationXv3!"
+BUCKET="teamtalkdata"
+SOURCE_DIR="/home/tt"
+LOG_FILE="/var/log/tt_sync.log"
+MC_BIN="/usr/local/bin/mc" # Change this path if mc is installed elsewhere
+TELEGRAM_BOT_TOKEN="YOUR_TOKEN_HERE"
+TELEGRAM_CHAT_ID="YOUR_CHAT_ID_HERE"
+
+# === TIMESTAMP ===
+TS=$(date '+%Y-%m-%d %H:%M:%S')
+echo "[$TS] Starting TeamTalk sync..." >> "$LOG_FILE"
+
+# === SETUP ALIAS ===
+$MC_BIN alias set local "http://${MINIO_HOST}:${MINIO_PORT}" "$ACCESS_KEY" "$SECRET_KEY" 2>> "$LOG_FILE"
+
+# === SYNC ===
+$MC_BIN mirror "$SOURCE_DIR" "local/${BUCKET}" --overwrite --remove --quiet 2>> "$LOG_FILE"
+STATUS=$?
+
+if [ $STATUS -eq 0 ]; then
+ echo "[$TS] ✅ Sync completed successfully." >> "$LOG_FILE"
+ curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" \
+ -d chat_id="${TELEGRAM_CHAT_ID}" \
+ -d text="✅ TeamTalk sync to MinIO completed at $TS"
+else
+ echo "[$TS] ❌ Sync failed with exit code $STATUS." >> "$LOG_FILE"
+ curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" \
+ -d chat_id="${TELEGRAM_CHAT_ID}" \
+ -d text="❌ TeamTalk sync to MinIO failed at $TS (exit code $STATUS)"
+fi
+