feat(ci): Runner物理分层 - 构建任务专属旧服务器,新服务器跑CI门禁 #326

Merged
xiaoxia merged 1 commits from feat/ci-runner-layered into develop 2026-07-14 18:11:01 +08:00
Owner

背景

当前9个Runner混跑所有CI任务,构建任务(重CPU/IO)和门禁检查(轻量)互相挤占资源,导致门禁排队、构建也慢。

方案

物理分层:

  • 🔴 旧服务器(3个Runner):专属跑镜像构建,标签 build-farm
  • 🟢 新服务器(6个Runner):专属跑CI门禁检查,不带build-farm标签

改造内容:

  • 6个构建Job(3个Staging + 3个Production)的 runs-onsaas 改为 [saas, build-farm]
  • 门禁Job(Validate/Unit/Integration/Frontend Lint)保持 runs-on: host,天然只在新服务器跑(旧Runner无host标签)
  • 部署/E2E保持 runs-on: saas,两边都能调度

收益

  1. 门禁检查不再被构建任务挤占,PR反馈更快
  2. 构建任务专属旧服务器,资源稳定
  3. 新服务器6个Runner全力跑检查,并行度高

变更范围

.gitea/workflows/ci-cd.yml:6个构建Job的runs-on配置

## 背景 当前9个Runner混跑所有CI任务,构建任务(重CPU/IO)和门禁检查(轻量)互相挤占资源,导致门禁排队、构建也慢。 ## 方案 **物理分层:** - 🔴 **旧服务器(3个Runner)**:专属跑镜像构建,标签 `build-farm` - 🟢 **新服务器(6个Runner)**:专属跑CI门禁检查,不带build-farm标签 **改造内容:** - 6个构建Job(3个Staging + 3个Production)的 `runs-on` 从 `saas` 改为 `[saas, build-farm]` - 门禁Job(Validate/Unit/Integration/Frontend Lint)保持 `runs-on: host`,天然只在新服务器跑(旧Runner无host标签) - 部署/E2E保持 `runs-on: saas`,两边都能调度 ## 收益 1. 门禁检查不再被构建任务挤占,PR反馈更快 2. 构建任务专属旧服务器,资源稳定 3. 新服务器6个Runner全力跑检查,并行度高 ## 变更范围 `.gitea/workflows/ci-cd.yml`:6个构建Job的runs-on配置
xiaoxia added 1 commit 2026-07-14 17:02:31 +08:00
feat(ci): Runner物理分层 - 构建任务只调度到旧服务器
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Successful in 1m16s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 1m26s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 1m8s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 2m56s
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
6db705a05d
将6个构建Job(Staging+Production)的runs-on从saas改为[saas, build-farm],
只有带build-farm标签的旧服务器Runner能接构建任务,新服务器6个Runner
专注跑CI门禁检查,实现真正的物理分层,避免构建任务挤占CI检查资源。
auto-approve-bot reviewed 2026-07-14 17:31:36 +08:00
auto-approve-bot left a comment
Collaborator

CI全绿,自动审批通过。

CI全绿,自动审批通过。
xiaoxia reviewed 2026-07-14 18:09:39 +08:00
xiaoxia left a comment
Author
Owner

CI全绿,Runner物理分层方案确认通过

CI全绿,Runner物理分层方案确认通过
xiaoxia merged commit 7f767e2dd1 into develop 2026-07-14 18:11:01 +08:00
Sign in to join this conversation.