From a657de1af8ee646b3a0384e4073b94683623bc2a Mon Sep 17 00:00:00 2001 From: Codex Bot Date: Fri, 18 Sep 2026 21:58:13 +0800 Subject: [PATCH] ci: retire persistent studio deployment --- .gitea/workflows/ci.yml | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 0f644f0..b4c66a6 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -25,17 +25,18 @@ jobs: run: npm test - name: Production build run: npm run build - - name: Deploy production container + - name: Stop the retired persistent container if: gitea.event_name == 'push' && gitea.ref == 'refs/heads/main' - env: - STUDIO_USERNAME: studio - STUDIO_PASSWORD: ${{ secrets.STUDIO_PASSWORD }} - DEPLOY_PORT: ${{ vars.DEPLOY_PORT }} - DEPLOY_DOCKERFILE: Dockerfile.deploy - GITHUB_SHA: ${{ gitea.sha }} run: | - if [ -z "$STUDIO_PASSWORD" ]; then - echo "Deployment skipped: repository secret STUDIO_PASSWORD is not configured" - exit 0 - fi - node scripts/deploy.mjs + node --input-type=module <<'JS' + import Docker from "dockerode"; + const docker = new Docker({ socketPath: "/var/run/docker.sock" }); + for (const name of ["rednote-tool-studio", "rednote-tool-studio-candidate", "rednote-tool-studio-previous"]) { + try { + await docker.getContainer(name).remove({ force: true }); + } catch (error) { + if (error.statusCode !== 404) throw error; + } + } + console.log("Retired Rednote Tool Studio containers stopped; the data volume was preserved."); + JS