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