#!/usr/bin/env bash
# Qullqi Wasi — Respaldo automático (cron 02:00 AM)
set -euo pipefail

APP_DIR="/var/www/html/qullqi_wasi"
BACKUP_DIR="$APP_DIR/storage/backups"
DB_NAME="qullqi_wasi_db"
DB_USER="root"
DB_PASS=""
FECHA=$(date +%Y%m%d_%H%M%S)
ARCHIVO="$BACKUP_DIR/qw_backup_$FECHA.sql.gz"
MAX_DIAS=14  # Retener respaldos 14 días

mkdir -p "$BACKUP_DIR"

echo "[$(date '+%Y-%m-%d %H:%M:%S')] Iniciando respaldo..."

# Dump MySQL comprimido
if [[ -z "$DB_PASS" ]]; then
    mysqldump -u"$DB_USER" "$DB_NAME" | gzip > "$ARCHIVO"
else
    mysqldump -u"$DB_USER" -p"$DB_PASS" "$DB_NAME" | gzip > "$ARCHIVO"
fi

echo "[$(date '+%Y-%m-%d %H:%M:%S')] Respaldo creado: $ARCHIVO ($(du -sh "$ARCHIVO" | cut -f1))"

# Limpiar respaldos viejos
find "$BACKUP_DIR" -name "qw_backup_*.sql.gz" -mtime +$MAX_DIAS -delete
echo "[$(date '+%Y-%m-%d %H:%M:%S')] Limpieza de respaldos anteriores a $MAX_DIAS días completada."
