mirror of
https://github.com/aya-rs/aya.git
synced 2026-09-27 10:02:34 +02:00
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