优化:Validate 检查内部并行化(8→2组并行) #707
1 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
2d327323f8 |
优化:Validate 检查内部并行化(8→2组并行)
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 26s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 30s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 54s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 1m15s
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 43s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 1m45s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 2m14s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
PR Automation / Auto Approve on CI Green (pull_request) Successful in 1m56s
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / Integration Tests (pull_request) Successful in 1m26s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 2m31s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 4m35s
AI Code Review / AI Code Review (pull_request) Successful in 4m14s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 8m43s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 33m16s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 9s
将 run_validate.sh 从串行执行 8 项检查重构为 5 个子任务并行执行:
并行分组:
Group A(独立并行):
A1: Secret detection (detect-secrets)
A2: Code quality checks (black/isort/ruff/compileall)
A3: Mypy type check
A4: Advisory checks (bandit + pip-audit + vulture + 脚本语法)
Group B(PG 依赖,独立并行):
B1: Alembic migrations validation
实现方式:bash background jobs + wait
- 每个子任务独立函数,输出写入 /tmp/validate_logs/ 独立日志
- wait 收集所有后台任务退出码
- 阻断类(secret/code quality/mypy/alembic)失败则整体失败
- 告警类(bandit/pip-audit/vulture)不阻断,行为不变
- 增量模式逻辑完整保留
- PG 迁移验证独立运行,不与其他检查争资源
- 完成后按顺序打印摘要,失败任务打印完整日志
预期耗时从 ~1.8min 降至 ~1min
|