#!/bin/bash

# Gitea Webhook Ambassador 快速设置脚本

set -e

echo "🚀 开始设置 Gitea Webhook Ambassador..."

# 检查 Python 版本
python_version=$(python3 --version 2>&1 | grep -oE '[0-9]+\.[0-9]+')
required_version="3.8"

if [ "$(printf '%s\n' "$required_version" "$python_version" | sort -V | head -n1)" != "$required_version" ]; then
    echo "❌ 需要 Python 3.8 或更高版本，当前版本: $python_version"
    exit 1
fi

echo "✅ Python 版本检查通过: $python_version"

# 创建虚拟环境
if [ ! -d "venv" ]; then
    echo "📦 创建虚拟环境..."
    python3 -m venv venv
fi

# 激活虚拟环境
echo "🔧 激活虚拟环境..."
source venv/bin/activate

# 升级 pip
echo "⬆️ 升级 pip..."
pip install --upgrade pip

# 安装依赖
echo "📚 安装依赖..."
pip install -r requirements.txt

# 创建配置文件
if [ ! -f ".env" ]; then
    echo "⚙️ 创建环境配置文件..."
    cp env.example .env
    echo "📝 请编辑 .env 文件，配置您的 Jenkins 凭据和其他设置"
fi

# 创建日志目录
mkdir -p logs

# 创建数据库目录
mkdir -p data

echo "✅ 设置完成！"
echo ""
echo "📋 下一步操作："
echo "1. 编辑 .env 文件，配置 Jenkins 凭据"
echo "2. 运行: source venv/bin/activate"
echo "3. 启动 Redis: docker run -d -p 6379:6379 redis:alpine"
echo "4. 启动服务: python -m uvicorn app.main:app --reload"
echo "5. 启动 Celery worker: celery -A app.tasks.jenkins_tasks worker --loglevel=info"
echo ""
echo "🌐 访问地址: http://localhost:8000"
echo "📊 监控面板: http://localhost:8000/health" 