From 8de78e4a63679430f370057600352095266b3cd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=93=B8=E6=B8=8A?= <565183519@qq.com> Date: Wed, 13 May 2026 08:41:53 +0000 Subject: [PATCH] =?UTF-8?q?feat:=20CI=E9=83=A8=E7=BD=B2=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20MCP=20Server=20=E8=87=AA=E5=8A=A8=E9=83=A8?= =?UTF-8?q?=E7=BD=B2=E5=92=8C=E5=81=A5=E5=BA=B7=E6=A3=80=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .forgejo/workflows/ci-and-deploy.yaml | 33 ++++++++++++++++++++++++++- .gitea/workflows/ci-and-deploy.yaml | 33 ++++++++++++++++++++++++++- 2 files changed, 64 insertions(+), 2 deletions(-) diff --git a/.forgejo/workflows/ci-and-deploy.yaml b/.forgejo/workflows/ci-and-deploy.yaml index b454341..1f4fc6e 100644 --- a/.forgejo/workflows/ci-and-deploy.yaml +++ b/.forgejo/workflows/ci-and-deploy.yaml @@ -74,7 +74,7 @@ jobs: run: | echo "═══ 安装依赖 ═══" # 逐个检查并安装 - for pkg_dir in server/git-sync server/wake-gate server/secrets-vault; do + for pkg_dir in server/git-sync server/wake-gate server/secrets-vault server/mcp-server; do if [ -f "/data/guanghulab/repo/$pkg_dir/package.json" ]; then cd "/data/guanghulab/repo/$pkg_dir" npm install --production 2>/dev/null || true @@ -82,6 +82,31 @@ jobs: fi done + - name: 部署 MCP Server + env: + ZY_REPO_TOKEN: ${{ secrets.ZY_REPO_TOKEN }} + run: | + echo "═══ 部署 MCP Server ═══" + MCP_DIR="/data/guanghulab/repo/server/mcp-server" + mkdir -p /data/guanghulab/mcp-server /data/guanghulab/.runtime/logs + + # 注入 Gitea 令牌 + if [ -n "$ZY_REPO_TOKEN" ]; then + sed -i "s/GITEA_TOKEN: ''/GITEA_TOKEN: '$ZY_REPO_TOKEN'/" "$MCP_DIR/ecosystem.config.js" + echo "✅ Gitea 令牌已注入" + fi + + # 启动或重启 MCP Server + if pm2 describe guanghulab-mcp-server &>/dev/null; then + pm2 restart guanghulab-mcp-server + echo "✅ MCP Server 已重启" + else + cd "$MCP_DIR" + pm2 start ecosystem.config.js + echo "✅ MCP Server 已启动" + fi + pm2 save + - name: 重启服务 run: | echo "═══ 重启服务 ═══" @@ -116,6 +141,12 @@ jobs: echo "⚠️ 代码同步服务 未响应" fi + if curl -sf http://127.0.0.1:8083/health > /dev/null 2>&1; then + echo "✅ MCP Server 正常" + else + echo "⚠️ MCP Server 未响应" + fi + if [ $FAIL -eq 1 ]; then echo "❌ 部署后关键服务异常" exit 1 diff --git a/.gitea/workflows/ci-and-deploy.yaml b/.gitea/workflows/ci-and-deploy.yaml index b454341..1f4fc6e 100644 --- a/.gitea/workflows/ci-and-deploy.yaml +++ b/.gitea/workflows/ci-and-deploy.yaml @@ -74,7 +74,7 @@ jobs: run: | echo "═══ 安装依赖 ═══" # 逐个检查并安装 - for pkg_dir in server/git-sync server/wake-gate server/secrets-vault; do + for pkg_dir in server/git-sync server/wake-gate server/secrets-vault server/mcp-server; do if [ -f "/data/guanghulab/repo/$pkg_dir/package.json" ]; then cd "/data/guanghulab/repo/$pkg_dir" npm install --production 2>/dev/null || true @@ -82,6 +82,31 @@ jobs: fi done + - name: 部署 MCP Server + env: + ZY_REPO_TOKEN: ${{ secrets.ZY_REPO_TOKEN }} + run: | + echo "═══ 部署 MCP Server ═══" + MCP_DIR="/data/guanghulab/repo/server/mcp-server" + mkdir -p /data/guanghulab/mcp-server /data/guanghulab/.runtime/logs + + # 注入 Gitea 令牌 + if [ -n "$ZY_REPO_TOKEN" ]; then + sed -i "s/GITEA_TOKEN: ''/GITEA_TOKEN: '$ZY_REPO_TOKEN'/" "$MCP_DIR/ecosystem.config.js" + echo "✅ Gitea 令牌已注入" + fi + + # 启动或重启 MCP Server + if pm2 describe guanghulab-mcp-server &>/dev/null; then + pm2 restart guanghulab-mcp-server + echo "✅ MCP Server 已重启" + else + cd "$MCP_DIR" + pm2 start ecosystem.config.js + echo "✅ MCP Server 已启动" + fi + pm2 save + - name: 重启服务 run: | echo "═══ 重启服务 ═══" @@ -116,6 +141,12 @@ jobs: echo "⚠️ 代码同步服务 未响应" fi + if curl -sf http://127.0.0.1:8083/health > /dev/null 2>&1; then + echo "✅ MCP Server 正常" + else + echo "⚠️ MCP Server 未响应" + fi + if [ $FAIL -eq 1 ]; then echo "❌ 部署后关键服务异常" exit 1