fix(ci): pass the required toolchain input in the nightly relock Rust setup - #1460
Conversation
… setup The 'Set up Rust for the nightly relock' step used dtolnay/rust-toolchain without its required 'toolchain' input, so every nightly run failed at that step with "'toolchain' is a required input" and the whole Build Tauri artifacts job was skipped. Install stable there like the other Rust steps do; re-installing an already-present toolchain is a no-op. Git-Session-Id: 53fa68e9-eeea-5397-82f3-b0d9dc10bd6a
|
Source-level confirmation of the root cause — from the pinned action commit inputs:
toolchain:
description: Rust toolchain specification ...
required: true
...
if [[ -z $toolchain ]]; then
# GitHub does not enforce `required: true` inputs itself. https://github.com/actions/runner/issues/1070
echo "'toolchain' is a required input" >&2
exit 1
|
|
🤖 AI code reviewAdds a Safe to merge — no P0/P1 findingsConfidence 5/5
✅ No thread-worthy findings. Advisory notes follow; they are retained without opening review threads. 1 advisory finding (summary-only, not scored)These P2 guard, heuristic, trade-off, or documentation claims are retained for judgment without opening review threads.
This is a How this was verified: static preflight: fix-commit + touched-files scan (rule 7) Files changed (1) — the diff as I read it
Reviewed Maintainer commands
|
|
Verified after merge: the scheduled Release run 35486255728 completed successfully, and |
Problem
The nightly
Releaserun on master fails in Build Tauri artifacts [latest submodules] at theSet up Rust for the nightly relockstep:dtolnay/rust-toolchainrequires atoolchaininput, and the step added in #1448 omits it. The step is gated onneeds.nightly-submodules.outputs.latest == 'true', so it is skipped on normal pushes and only fires on the nightly cron — which means it fails every nightly run and takes the whole Tauri build job (all matrix legs) with it.Failing run: https://github.com/ActivityWatch/activitywatch/actions/runs/35418145377
The comment above the step says "the toolchain action is idempotent", which reads as the intent: the author wanted cargo available early without a redundant install. Re-installing an already-present toolchain is a no-op, but the input still has to be passed.
Fix
Pass
toolchain: stable, matching the otherSet up Ruststeps in the same workflow. One-line change plus comment correction.Verification
Parsed the workflow and checked every
dtolnay/rust-toolchainusage inrelease.ymlhas a non-emptytoolchaininput:yaml.safe_loadparses clean. The real proof is the next nightly run reaching the relock step.