fix(ci): run Check on the dev runner label #40

Merged
Claude-Run merged 1 commit from fix/EB-2-check-dev-runner-label into main 2026-08-02 01:17:48 +02:00
Member

check.yml pinned the check job to RUNS_ON_OPENSUSE_BASE_LATEST and then compiled Rust natively on the runner (fmt, clippy, build, test). The base image ships cargo and rustc but no C toolchain, and build.rs forces at least one link step, so a cold-cache run fails with error: linker cc not found. A warm Swatinem/rust-cache hides it, so the defect only surfaces on the first run after a Cargo.toml / Cargo.lock change. Switch the job to RUNS_ON_OPENSUSE_DEV_LATEST, whose image carries cc/gcc/ld plus the glibc and OpenSSL headers.

Sweep the other three workflows and annotate each label with why it is correct: build-windows.yml and release.yml compile inside docker buildx, so the toolchain comes from the builder image and the runner only needs Docker; create-release.yml compiles nothing at all. All three stay on base.

Add scripts/check-runner-labels.nu as a mechanical guard so the base label cannot silently come back: it fails if check.yml stops requesting the dev label, or if any runs-on in .forgejo/workflows/ loses the comment that justifies it. Wired into just check and into check.yml as its own step.

#EB-2

check.yml pinned the check job to RUNS_ON_OPENSUSE_BASE_LATEST and then compiled Rust natively on the runner (fmt, clippy, build, test). The base image ships cargo and rustc but no C toolchain, and build.rs forces at least one link step, so a cold-cache run fails with `error: linker `cc` not found`. A warm Swatinem/rust-cache hides it, so the defect only surfaces on the first run after a Cargo.toml / Cargo.lock change. Switch the job to RUNS_ON_OPENSUSE_DEV_LATEST, whose image carries cc/gcc/ld plus the glibc and OpenSSL headers. Sweep the other three workflows and annotate each label with why it is correct: build-windows.yml and release.yml compile inside `docker buildx`, so the toolchain comes from the builder image and the runner only needs Docker; create-release.yml compiles nothing at all. All three stay on base. Add scripts/check-runner-labels.nu as a mechanical guard so the base label cannot silently come back: it fails if check.yml stops requesting the dev label, or if any runs-on in .forgejo/workflows/ loses the comment that justifies it. Wired into `just check` and into check.yml as its own step. #EB-2
fix(ci): run Check on the dev runner label
All checks were successful
Check / fmt + clippy + build + tests (pull_request) Successful in 9s
Create release / Create release from merged PR (pull_request) Has been skipped
b8b1b05765
check.yml pinned the check job to RUNS_ON_OPENSUSE_BASE_LATEST and then compiled Rust natively on the runner (fmt, clippy, build, test). The base image ships cargo and rustc but no C toolchain, and build.rs forces at least one link step, so a cold-cache run fails with `error: linker `cc` not found`. A warm Swatinem/rust-cache hides it, so the defect only surfaces on the first run after a Cargo.toml / Cargo.lock change. Switch the job to RUNS_ON_OPENSUSE_DEV_LATEST, whose image carries cc/gcc/ld plus the glibc and OpenSSL headers.

Sweep the other three workflows and annotate each label with why it is correct: build-windows.yml and release.yml compile inside `docker buildx`, so the toolchain comes from the builder image and the runner only needs Docker; create-release.yml compiles nothing at all. All three stay on base.

Add scripts/check-runner-labels.nu as a mechanical guard so the base label cannot silently come back: it fails if check.yml stops requesting the dev label, or if any runs-on in .forgejo/workflows/ loses the comment that justifies it. Wired into `just check` and into check.yml as its own step.

#EB-2
Claude-Run deleted branch fix/EB-2-check-dev-runner-label 2026-08-02 01:17:49 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
pandoras-box/explorer-bookmarks!40
No description provided.