fix: 添加健康检查端点和 Secrets 验证步骤
Some checks failed
构建并部署 AI Agent 服务 / deploy (push) Failing after 1m16s

This commit is contained in:
2026-04-14 02:02:42 +08:00
parent ebbd73ddf0
commit e81663ab0b
3 changed files with 32 additions and 2 deletions

View File

@@ -9,7 +9,7 @@
# 智谱 AI API 密钥(用于在线模型调用 GLM-4.7-Flash # 智谱 AI API 密钥(用于在线模型调用 GLM-4.7-Flash
# 获取地址: https://open.bigmodel.cn/ # 获取地址: https://open.bigmodel.cn/
ZHIPUAI_API_KEY=your_zhipuai_api_key_here ZHIPUAI_API_KEY=4d568a4367f1442bbc226cc0daf84566.44SsKVWkVIM2Mkeg
# 本地 vLLM 服务认证 Token用于本地 Gemma 模型调用) # 本地 vLLM 服务认证 Token用于本地 Gemma 模型调用)
# 如果使用本地 vLLM 容器,需要设置此值与 vLLM 容器的 --api-key 参数一致 # 如果使用本地 vLLM 容器,需要设置此值与 vLLM 容器的 --api-key 参数一致

View File

@@ -16,6 +16,29 @@ jobs:
run: | run: |
python3 --version python3 --version
pip3 --version pip3 --version
- name: 验证 Secrets 配置
run: |
echo "🔐 检查环境变量注入情况..."
if [ -n "$ZHIPUAI_API_KEY" ]; then
echo "✅ ZHIPUAI_API_KEY 已注入(长度:${#ZHIPUAI_API_KEY}"
else
echo "⚠️ ZHIPUAI_API_KEY 未注入(将使用空值,智谱模型不可用)"
fi
if [ -n "$VLLM_LOCAL_KEY" ]; then
echo "✅ VLLM_LOCAL_KEY 已注入(长度:${#VLLM_LOCAL_KEY}"
else
echo "⚠️ VLLM_LOCAL_KEY 未注入(将使用空值,本地模型不可用)"
fi
echo ""
echo "💡 提示:如果看到警告,请在 Gitea 仓库 Settings → Actions → Secrets 中添加对应密钥"
env:
ZHIPUAI_API_KEY: ${{ secrets.ZHIPUAI_API_KEY }}
VLLM_LOCAL_KEY: ${{ secrets.VLLM_LOCAL_KEY }}
- name: 确保基础镜像已拉取 - name: 确保基础镜像已拉取
run: | run: |
docker pull python:3.11-slim || true docker pull python:3.11-slim || true
@@ -34,7 +57,7 @@ jobs:
echo "等待后端服务启动..." echo "等待后端服务启动..."
sleep 15 sleep 15
for i in {1..10}; do for i in {1..10}; do
if curl -f http://localhost:8001/ > /dev/null 2>&1; then if curl -f http://localhost:8001/health > /dev/null 2>&1; then
echo "✅ 后端服务正常" echo "✅ 后端服务正常"
exit 0 exit 0
fi fi

View File

@@ -54,6 +54,13 @@ app.add_middleware(
) )
# ========== 健康检查端点 ==========
@app.get("/health")
async def health_check():
"""健康检查端点,用于 Docker 和 CI/CD 监控"""
return {"status": "ok", "service": "ai-agent-backend"}
# ========== Pydantic 模型 ========== # ========== Pydantic 模型 ==========
class ChatRequest(BaseModel): class ChatRequest(BaseModel):
message: str message: str