fix(runner): v4 - 啟用 cancel-in-progress 防止並行衝突

根因確認:
- _diag/pages 衝突發生在 "Set up job" 階段
- 這是在任何自定義步驟執行之前
- Runner 內部 bug,workflow 層清理無法解決

永久解決方案:
- cancel-in-progress: true (確保同一時間只有一個 workflow)
- 不再嘗試清理 RUNNER_TEMP (會破壞其他 Job)
- 保留 _diag/pages 清理作為輔助措施

更新 ops/runner/README.md:
- 完整根因分析
- v3 最終解決方案說明
- 警告: 不要清理 RUNNER_TEMP

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
OG T
2026-03-29 02:10:17 +08:00
parent 08fb6c59c8
commit 07114f9181
2 changed files with 28 additions and 11 deletions

View File

@@ -36,8 +36,10 @@ on:
concurrency:
group: cd-${{ github.workflow }}-${{ github.ref }}
# 2026-03-26: 改為等待而非取消,避免 Runner _diag/pages 檔案衝突
cancel-in-progress: false
# 2026-03-29: 改取消,因為 Runner _diag/pages 衝突發生在 Set up job 階段
# 等待模式 (cancel-in-progress: false) 會導致並行 Job 寫入同一診斷檔
# 取消模式確保同一時間只有一個 workflow 在執行
cancel-in-progress: true
env:
REGISTRY: 192.168.0.110:5000