短周期突发构建最怕两件事:机器到了却接不进队列,以及为赶窗口把高权限令牌塞进 Runner。云 Mac 开通后首小时,优先把 Runner 在线、Git/制品可达、凭证最小拆分一次闭环。下文按 30–60 分钟可勾选,适合自托管 macOS Runner。弹性池与常驻取舍见 GitHub Actions 自托管 Runner:弹性池还是常驻节点?;买 vs 租见 突发构建买 vs 租决策矩阵。
30–60 分钟落地清单(按顺序勾选)
每行都可立刻在平台或日志里验收,避免拖到首次真跑 workflow 才爆。
| 阶段 | 动作 | 通过标准 |
|---|---|---|
| 0–10 分 | 专用系统用户、关睡眠/锁屏断连;主机名与 runs-on 标签对齐。 |
Listener 常驻,无重复注册。 |
| 10–25 分 | 同 shell 跑 git ls-remote、curl -I 到 Git/制品域;必要时写死公司 DNS。 |
TLS 与 HTTP 状态正常,无代理/证书链误配。 |
| 25–45 分 | 注册队列并跑最小 workflow(checkout + echo)验标签与并发槽。 | 任务从 queued 进 in_progress,本机有日志。 |
| 45–60 分 | Deploy Key 只读拉代码;制品用 scoped token;密钥进钥匙串/密钥库。 | 单令牌撤销只影响对应步骤。 |
网络自检:把「慢」从编译里拆出来
DNS 与首包 RTT 常被误算进编译耗时;请用与 Runner 相同环境执行探测并写入值班手册首页。若团队跨区,顺便记录托管商 PoP 与 Runner 所在区域的组合,避免把跨洋 RTT 当成「编译变慢」。
# Git 托管与制品站各测一次 curl -Iv https://github.com 2>&1 | head -n 20 git ls-remote https://github.com/your-org/your-repo.git HEAD # 子模块若走 SSH,确认 known_hosts 与密钥代理 ssh -T [email protected]
HTTPS 与 SSH 表现不一致时,对照企业代理放行端口;结论写进 workflow 环境模板即可复用。
最小权限令牌:能写制品就别给删库
避免「先用我的 PAT 跑通」。代码用只读 Deploy Key;制品用 fine-grained 或机器用户 scoped token;轮换只动受影响凭证,Runner 侧不落明文备份。
FAQ
Idle 但不派单? 核对 Runner group 授权、runs-on 与标签大小写。
checkout 很慢? 看 shallow/子模块是否全开;网络正常则先减克隆深度再谈升配。
新令牌 401? 查 NTP、密钥是否夹换行、Runner 是否已重启;用最小 curl 复现比在整段 workflow 里猜快。
在云端 Mac mini 上,并网更省事
自托管 Runner 一半靠硬件,一半靠干净 macOS 基线。Apple Silicon Mac mini 统一内存与约 4W 待机功耗,降低峰值碰 swap 的概率,也适合短周期常驻或弹性池标准单元;Unix、Homebrew 与 SSH 开箱即用,网络自检命令与本地习惯一致。
Gatekeeper、SIP、FileVault 与可预期的更新节奏,比临时 Windows 构建机更易讲清合规;小体积静音也省长期运维成本。
若要把突发构建变成可复制的并网流程,VPSSpark 云端 Mac mini M4 可作统一硬件画像——立即了解套餐方案,让 Runner 与网络自检在新节点上同样顺滑。