My-Weekly-ToDo-List/scripts/backup-db.sh
mARTin eebc8eb9b6 feat: drag-to-provider sync, recurring task editing, resizable areas, search improvements
- Sync tasks to external provider when dragged to a synced Someday list (Google/Outlook/Synology)
- Add Synology support to POST /api/tasks/sync endpoint
- Edit recurring task series (title, interval, unit, time) all at once via new API
- Make Someday and all-day areas vertically resizable with drag handles (height persisted in cookies)
- Include Someday tasks in search results with list name display
- Instant calendar event appearance after creation (improved optimistic update + immediate cache refresh)
- Fix project color not updating on tasks when project color changes
- Add database backup script for Supabase LXC

v1.39.0

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 00:50:42 +01:00

33 lines
935 B
Bash
Executable File

#!/bin/bash
# Automated PostgreSQL backup script
# Run via cron on the Supabase LXC: 0 */6 * * * /root/backup-db.sh
# Keeps 7 days of backups
BACKUP_DIR="/root/backups"
CONTAINER="supabase-db"
DB_NAME="postgres"
DB_USER="postgres"
KEEP_DAYS=7
mkdir -p "$BACKUP_DIR"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
BACKUP_FILE="$BACKUP_DIR/todo_backup_${TIMESTAMP}.sql.gz"
echo "[$(date)] Starting backup..."
docker exec "$CONTAINER" pg_dump -U "$DB_USER" "$DB_NAME" --clean --if-exists | gzip > "$BACKUP_FILE"
if [ $? -eq 0 ] && [ -s "$BACKUP_FILE" ]; then
echo "[$(date)] Backup saved: $BACKUP_FILE ($(du -h "$BACKUP_FILE" | cut -f1))"
else
echo "[$(date)] ERROR: Backup failed!"
rm -f "$BACKUP_FILE"
exit 1
fi
# Remove backups older than KEEP_DAYS
find "$BACKUP_DIR" -name "todo_backup_*.sql.gz" -mtime +$KEEP_DAYS -delete
echo "[$(date)] Cleanup done. Current backups:"
ls -lh "$BACKUP_DIR"/todo_backup_*.sql.gz 2>/dev/null