#!/bin/bash
# =============================================================
#  服务器监控系统 · 一键部署脚本
#  来源: http://fk.小刘.top/install.sh
#  用法:  curl -fsSL http://fk.小刘.top/install.sh | bash
#=============================================================
set -e

BASE_URL="https://fk.xn--2brt6v.top"          # 域名(Punycode)
TARBALL="$BASE_URL/server-monitor.tar.gz"    # 安装包
APP_NAME="服务器监控脚本"
DEFAULT_DIR="/www/wwwroot/服务器监控脚本"

echo "======================================"
echo "  服务器监控系统 一键部署"
echo "======================================"

# 1. 环境检查
if [ "$(id -u)" -ne 0 ] && [ "$EUID" -ne 0 ]; then
    echo "请以 root 用户执行（当前非 root），可尝试: sudo bash -c 'curl -fsSL http://fk.小刘.top/install.sh | bash'"
    exit 1
fi
command -v curl >/dev/null 2>&1 || { echo "缺少 curl，正在安装..."; apt-get update -y >/dev/null && apt-get install -y curl >/dev/null; }
command -v tar  >/dev/null 2>&1 || { echo "缺少 tar，正在安装...";  apt-get update -y >/dev/null && apt-get install -y tar  >/dev/null; }

# 2. 指定或默认安装目录
INSTALL_DIR="${1:-$DEFAULT_DIR}"
echo "安装目录: $INSTALL_DIR"

# 3. 下载
echo "[1/4] 下载安装包 ..."
rm -rf /tmp/${APP_NAME}-install && mkdir -p /tmp/${APP_NAME}-install
curl -fsSL "$TARBALL" -o /tmp/${APP_NAME}-install/package.tar.gz
echo "      下载完成: $(du -h /tmp/${APP_NAME}-install/package.tar.gz | cut -f1)"

# 4. 解压到目标目录
echo "[2/4] 解压到 $INSTALL_DIR ..."
mkdir -p "$INSTALL_DIR"
tar -xzf /tmp/${APP_NAME}-install/package.tar.gz -C "$INSTALL_DIR"
chmod +x "$INSTALL_DIR"/deploy.sh "$INSTALL_DIR"/*.py 2>/dev/null || true

# 5. 运行正式部署脚本
echo "[3/4] 运行部署脚本 (安装系统依赖 / Python 环境 / systemd 服务) ..."
cd "$INSTALL_DIR"
./deploy.sh

echo "======================================"
echo "  🎉 部署完成！"
echo "  管理面板: http://$(hostname -I | awk '{print $1}'):5000"
echo "  如需自定义安装目录，请执行:"
echo "  curl -fsSL http://fk.小刘.top/install.sh | bash -s /自定/目录"
echo "======================================"
