#!/bin/bash set -e BACKUP_DIR="{{ snikket_backup_dir }}" DATA_DIR="{{ snikket_data_dir }}" CONFIG_DIR="{{ snikket_base_dir }}" TIMESTAMP=$(date +%F-%H%M) RETENTION_DAYS={{ snikket_backup_retention_days }} echo "[$(date)] Starting Snikket backup..." mkdir -p "$BACKUP_DIR" echo "Backing up data..." tar czf "$BACKUP_DIR/snikket-data-$TIMESTAMP.tar.gz" \ -C "$(dirname "$DATA_DIR")" \ "$(basename "$DATA_DIR")" echo "Backing up configs..." cp "$CONFIG_DIR/snikket.conf" "$BACKUP_DIR/snikket.conf-$TIMESTAMP" cp "$CONFIG_DIR/docker-compose.yml" "$BACKUP_DIR/docker-compose.yml-$TIMESTAMP" cp "{{ snikket_nginx_custom_dir }}/snikket.conf" "$BACKUP_DIR/nginx-custom.conf-$TIMESTAMP" echo "Cleaning up backups older than $RETENTION_DAYS days..." find "$BACKUP_DIR" -name "snikket-*.tar.gz" -mtime +$RETENTION_DAYS -delete find "$BACKUP_DIR" -name "*.conf-*" -mtime +$RETENTION_DAYS -delete echo "[$(date)] Backup completed successfully" echo "Backup location: $BACKUP_DIR" du -sh "$BACKUP_DIR"