#!/bin/bash

# Usage: sudo ./deploy_random_html.sh --domain example.com

set -e

# --- ПАРСИНГ ПАРАМЕТРОВ ---
if [[ "$1" != "--domain" || -z "$2" ]]; then
    echo "Usage: $0 --domain example.com"
    exit 1
fi

DOMAIN="$2"
REPO_URL="https://gitea.creative-tg1.ru/CREATIVE_tg1/sites-auth.git"
DEPLOY_DIR="/var/www/$DOMAIN"

# --- УСТАНОВКА ЗАВИСИМОСТЕЙ ---
apt update
apt install -y git nginx certbot python3-certbot-nginx

# --- КЛОНИРОВАНИЕ РЕПО ---
TMP_DIR=$(mktemp -d)
git clone "$REPO_URL" "$TMP_DIR"

# --- ВЫБОР СЛУЧАЙНОГО HTML ФАЙЛА ---
HTML_FILE=$(find "$TMP_DIR" -type f -name "*.html" | shuf -n 1)

if [[ -z "$HTML_FILE" ]]; then
    echo "Нет HTML файлов в репозитории!"
    rm -rf "$TMP_DIR"
    exit 1
fi

# --- ПОДГОТОВКА ПАПКИ ДЛЯ ДОСТУПА ---
mkdir -p "$DEPLOY_DIR"
cp "$HTML_FILE" "$DEPLOY_DIR/index.html"

# --- НАСТРОЙКА NGINX ---
NGINX_CONF="/etc/nginx/sites-available/$DOMAIN"
cat > "$NGINX_CONF" <<EOL
server {
    listen 80;
    server_name $DOMAIN;

    root $DEPLOY_DIR;
    index index.html;

    location / {
        try_files \$uri \$uri/ =404;
    }
}
EOL

ln -sf "$NGINX_CONF" /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx

# --- SSL через Certbot ---
certbot --nginx -d "$DOMAIN" --non-interactive --agree-tos -m admin@$DOMAIN

# --- УДАЛЕНИЕ ВРЕМЕННОГО РЕПО ---
rm -rf "$TMP_DIR"

echo "Готово! $DOMAIN развернут с файлом $(basename "$HTML_FILE") и временные файлы удалены."