fix(cd): P0 並發治理 - force_deploy 獨立 concurrency group
首席架構師審查 2026-03-29: - 問題: cancel-in-progress: true 導致 force_deploy 被新 push 取消 - 已發生 5+ 次 force deploy 被取消,25 commits 無法部署 - 解決: force_deploy 使用獨立 group,不會被普通 push 取消 - 普通 push 仍互相取消 (防止 Runner 檔案衝突) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
15
.github/workflows/cd.yaml
vendored
15
.github/workflows/cd.yaml
vendored
@@ -35,11 +35,16 @@ on:
|
||||
default: false
|
||||
|
||||
concurrency:
|
||||
group: cd-${{ github.workflow }}-${{ github.ref }}
|
||||
# 2026-03-29: 改回取消,因為 Runner _diag/pages 衝突發生在 Set up job 階段
|
||||
# 等待模式 (cancel-in-progress: false) 會導致並行 Job 寫入同一診斷檔
|
||||
# 取消模式確保同一時間只有一個 workflow 在執行
|
||||
cancel-in-progress: true
|
||||
# =======================================================================
|
||||
# 2026-03-29 首席架構師審查: P0 並發治理
|
||||
# 問題: cancel-in-progress: true 導致 force_deploy 被新 push 取消
|
||||
# 解決: force_deploy 使用獨立 concurrency group,不會被普通 push 取消
|
||||
# =======================================================================
|
||||
group: ${{ inputs.force_deploy && 'cd-force-deploy' || format('cd-{0}-{1}', github.workflow, github.ref) }}
|
||||
# force_deploy 使用獨立 group,普通 push 使用原 group
|
||||
# 普通 push 互相取消 (防止 Runner 衝突)
|
||||
# force_deploy 不會被普通 push 取消
|
||||
cancel-in-progress: ${{ !inputs.force_deploy }}
|
||||
|
||||
env:
|
||||
REGISTRY: 192.168.0.110:5000
|
||||
|
||||
Reference in New Issue
Block a user