#!/usr/bin/env bash
# deploy.sh — Déploiement vers le VPS de production
# Lancer depuis la racine du projet : bash infra/deploy.sh
set -euo pipefail

VPS_USER="deploy"
VPS_HOST="83.228.245.72"
VPS_PATH="/var/www/manahote-app"
PHP_VERSION="8.3"

if [ -z "${VPS_HOST}" ]; then
    echo "ERREUR : renseigner VPS_HOST dans infra/deploy.sh" >&2
    exit 1
fi

REMOTE="${VPS_USER}@${VPS_HOST}"

echo "==> Synchronisation du code vers ${REMOTE}:${VPS_PATH}"
rsync -azv --delete \
    --exclude='.git/' \
    --exclude='config/config.local.php' \
    --exclude='config/config.php' \
    --exclude='infra/' \
    --exclude='tests/' \
    --exclude='serve.sh' \
    --exclude='*.md' \
    . "${REMOTE}:${VPS_PATH}/"

echo "==> Migrations base de données"
ssh "${REMOTE}" "cd ${VPS_PATH} && php vendor/bin/phinx migrate -c phinx.php"

echo "==> Rechargement PHP-FPM"
ssh "${REMOTE}" "sudo systemctl reload php${PHP_VERSION}-fpm"

echo "==> Déploiement terminé."
