- 新增完整的 Python 实现,替代 Go 版本 - 添加 Web 登录界面和仪表板 - 实现 JWT 认证和 API 密钥管理 - 添加数据库存储功能 - 保持与 Go 版本一致的目录结构和启动脚本 - 包含完整的文档和测试脚本
61 lines
1.6 KiB
Bash
Executable File
61 lines
1.6 KiB
Bash
Executable File
#!/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" |