Compare commits

...

2 Commits

Author SHA1 Message Date
wangjia c3736fa43a Merge pull request 'fix(ci): 串行化 mac 三 job(android→macos→ios) 消除单 runner 争用' (#14) from worktree-fix-sysext-network-ent into main
Deploy Client / build-windows (push) Successful in 2m37s
Deploy Client / build-android (push) Successful in 4m11s
Deploy Client / deploy-web (push) Successful in 4m52s
Deploy Client / build-macos (push) Failing after 2m35s
Deploy Client / build-ios (push) Successful in 5m9s
Deploy Client / release-deploy (push) Successful in 1m44s
Reviewed-on: #14
2026-09-07 23:00:39 +00:00
wangjia 6c6d9636bb fix(ci): 串行化 mac 三 job(android→macos→ios) 消除单 runner 争用
run#286 暴露:三个 runs-on:mac 并行,家里只一个 mac runner(capacity=1),
android 占住后 macos/ios 抢不到 runner 被整体 cancelled(全步骤含 Checkout
都 cancelled)→ iOS 没跑起来、没上 TestFlight。用 needs 把 mac 三 job 串成
链(build-macos needs android、build-ios needs macos)+ if:!cancelled() 保证
上游失败也照跑,一个跑完再跑下一个,不再争用。windows/deploy-web 在各自
runner 上仍并行。对齐 jiu 的 needs 链。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FEVUXAbFT6bF1Qw27RHWoD
2026-09-08 06:59:33 +08:00
+10
View File
@@ -96,6 +96,13 @@ jobs:
# APPSTORE_API_* 等),macos/ios 正常应成功;continue-on-error 只是抖动兜底。
build-macos:
runs-on: mac
# 串行化 mac 三 job(android→macos→ios):家里只有一个 mac runner(capacity=1),
# 三个 runs-on:mac 并行会抢同一 runner → 抢不到的被取消(run#286 的 macos/ios 全步
# 骤 cancelled 即此)。用 needs 串成链让它们一个跑完再跑下一个;`if: !cancelled()`
# 保证即便上游(android/macos)失败,本 job 仍在其完成后照跑(不因上游 fail 被 skip),
# 与 continue-on-error 一起兜住「单平台抖动不拖累其他平台」。对齐 jiu 的 needs 链。
needs: [build-android]
if: ${{ !cancelled() }}
continue-on-error: true
env:
GOPROXY: https://goproxy.cn,direct
@@ -138,6 +145,9 @@ jobs:
build-ios:
runs-on: mac
# 串行链末环:等 build-macos 完成再跑(单 mac runner 不争用,见 build-macos 注释)。
needs: [build-macos]
if: ${{ !cancelled() }}
continue-on-error: true
env:
GOPROXY: https://goproxy.cn,direct