#!/bin/bash
# ==============================================================
# ArlanGTC - Automated MySQL Database Backup Script
# ==============================================================

# Directory where backups are stored
BACKUP_DIR="/var/backups/arlangtc"
TIMESTAMP=$(date +"%Y%m%d_%H%M%S")
BACKUP_FILE="${BACKUP_DIR}/arlangtc_${TIMESTAMP}.sql.gz"

# Database credentials (can also read from .env if desired)
DB_USER="arlangtc_user"
DB_PASS="YOUR_DB_PASSWORD"
DB_NAME="arlangtc"

# Create backup directory if not exists
mkdir -p ${BACKUP_DIR}

# Dump and compress database
echo "[$(date)] Starting backup of ${DB_NAME}..."
mysqldump -u ${DB_USER} -p"${DB_PASS}" ${DB_NAME} | gzip > ${BACKUP_FILE}

if [ $? -eq 0 ]; then
  echo "[$(date)] Backup completed successfully: ${BACKUP_FILE}"
else
  echo "[$(date)] ERROR: Backup failed!" >&2
  exit 1
fi

# Rotate backups: Delete backups older than 14 days
find ${BACKUP_DIR} -type f -name "arlangtc_*.sql.gz" -mtime +14 -exec rm {} \;
echo "[$(date)] Cleaned up backups older than 14 days."
