freeleaps-ops/apps/gitea-webhook-ambassador-python/scripts/setup.sh
Nicolas f6c515157c feat: 添加 Python 版本的 Gitea Webhook Ambassador
- 新增完整的 Python 实现,替代 Go 版本
- 添加 Web 登录界面和仪表板
- 实现 JWT 认证和 API 密钥管理
- 添加数据库存储功能
- 保持与 Go 版本一致的目录结构和启动脚本
- 包含完整的文档和测试脚本
2025-07-20 21:17:10 +08:00

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"