From ea7f6736df7a807767309b1177338d51a8d90eeb Mon Sep 17 00:00:00 2001 From: WangDL Date: Fri, 22 May 2026 10:04:47 +0800 Subject: [PATCH] =?UTF-8?q?ci:=20add=20NestJS=20build=20+=20deploy=20?= =?UTF-8?q?=E2=80=94=20npm=20ci=20+=20prisma=20+=20nest=20build=20+=20rsyn?= =?UTF-8?q?c=20+=20restart?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/deploy.yml | 37 ++++++++++++++++++++++++++++++++++--- 1 file changed, 34 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 199f131..188336a 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -16,6 +16,17 @@ jobs: git clone http://10.2.0.7:3000/suche-Hermes/api-server.git /tmp/api-server fi + - name: Install dependencies + run: | + cd /tmp/api-server + npm ci + + - name: Build + run: | + cd /tmp/api-server + npx prisma generate + npm run build + - name: Ensure infrastructure is ready run: | docker start mysql redis qdrant 2>/dev/null || true @@ -39,20 +50,40 @@ jobs: echo "[deploy] No failed migrations found" fi + - name: Run database migrations + run: | + cd /tmp/api-server + npx prisma migrate deploy + + - name: Deploy NestJS API + run: | + rsync -av --delete \ + /tmp/api-server/dist/ /opt/zhixi/backend/dist/ + rsync -av --delete \ + /tmp/api-server/node_modules/ /opt/zhixi/backend/node_modules/ + rsync -av \ + /tmp/api-server/prisma/ /opt/zhixi/backend/prisma/ + rsync -av \ + /tmp/api-server/package.json /opt/zhixi/backend/package.json + + - name: Restart API service + run: | + sudo systemctl restart zhixi-api + sleep 3 + sudo systemctl is-active zhixi-api + echo "[deploy] zhixi-api active OK" + - name: Deploy RAG Worker run: | set -e WORKER_DIR="/opt/zhixi/backend/rag-worker" mkdir -p "$WORKER_DIR" - rsync -av --delete --exclude='.env' --exclude='__pycache__' \ /tmp/api-server/rag-worker/ "$WORKER_DIR/" - sudo cp "$WORKER_DIR/zhixi-worker.service" /etc/systemd/system/ sudo systemctl daemon-reload sudo systemctl restart zhixi-worker sleep 5 - sudo systemctl is-active zhixi-worker echo "[deploy] zhixi-worker active OK"