Files
Tamir Duberstein 4704f70e7b ci: share immutable Rust toolchain discovery
bpf-linker's beta CI broke when the mutable beta channel moved from
LLVM 22 to LLVM 23 [1]. Its updater needs the exact compiler identity,
not only the channel name.

Expose a read-only reusable workflow that resolves stable to a numbered
release and beta/nightly to dated releases, together with their rustc
commits. Verify that each immutable manifest matches the mutable one so
consumers can apply their own compatibility and promotion policies.

Keep Aya's stable and nightly pins in named MODULE.bazel declarations.
Read and update their version attributes with the pinned Buildozer,
rejecting regressions before editing either channel. Register only
nightly for Bazel's eBPF targets; Cargo CI installs the same committed
versions instead of mutable channel labels.

Read both pins once in CI's prepare job and pass the versions explicitly
to toolchain setup and codegen, avoiding a Bazel bootstrap in each Cargo
job. The update workflow passes its validated nightly to codegen directly.

Refresh the Bazel lockfile after advancing the pins to keep archive
facts synchronized.

[1]: https://github.com/aya-rs/bpf-linker/actions/runs/32331638741/job/96313377731
2026-08-23 15:31:48 -04:00
..