expanding the bot
All checks were successful
Build and Push Docker Image / build (push) Successful in 58s

This commit is contained in:
2025-10-20 15:09:46 -07:00
parent 7e82e41566
commit c8cc8f25bd

View File

@@ -1,17 +1,27 @@
#!/usr/bin/env bash
#!/usr/bin/with-contenv bash
set -e
LOG_FILE="/config/log/backupbot.log"
mkdir -p "$(dirname "$LOG_FILE")"
echo "[BACKUPBOT_INFO] Starting PostgreSQL backup loop service..." | tee -a "$LOG_FILE"
echo "[BACKUPBOT_INFO] Starting PostgreSQL backup loop service..."
INTERVAL_HOURS="${INTERVAL_HOURS:-24}"
STATE_FILE="/config/last_backup_date"
LOG_FILE="/config/log/pgbackup.log"
mkdir -p "$(dirname "$STATE_FILE")" "$(dirname "$LOG_FILE")"
# Stay alive forever
while true; do
echo "[BACKUPBOT_INFO] Triggering backup.sh at $(date)" | tee -a "$LOG_FILE"
TODAY=$(date +%F)
# Check if a backup already ran today
if [[ -f "$STATE_FILE" && "$(cat "$STATE_FILE")" == "$TODAY" ]]; then
echo "[BACKUPBOT_INFO] Backup already completed today ($TODAY). Skipping."
else
echo "[BACKUPBOT_INFO] Triggering backup.sh at $(date)"
/usr/local/bin/backup.sh "$LOG_FILE"
echo "[BACKUPBOT_INFO] Sleeping for $INTERVAL_HOURS hours..." | tee -a "$LOG_FILE"
echo "$TODAY" >"$STATE_FILE"
echo "[BACKUPBOT_INFO] Backup completed and date recorded."
fi
echo "[BACKUPBOT_INFO] Sleeping for $INTERVAL_HOURS hours..."
sleep "${INTERVAL_HOURS}h"
done