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

Merged
Claude-Run merged 1 commit from fix/MK-27-check-dev-runner-label into main 2026-08-02 01:37:35 +02:00
Member

The check job compiles Rust natively on the runner (cargo fmt, clippy, build --all-targets, test) but requested RUNS_ON_OPENSUSE_BASE_LATEST. The base image ships cargo and rustc but no C toolchain, so any crate with a build script fails to link with error: linker `cc` not found. A warm Swatinem/rust-cache masks it, so it only surfaces on a cold cache, which is every Cargo.toml / Cargo.lock change. Switch the job to RUNS_ON_OPENSUSE_DEV_LATEST, whose image carries cc/gcc/ld plus glibc and OpenSSL headers.

Classify the other two jobs and record the reason inline. build-binary.yml stays on base: the musl compile happens inside docker buildx, the job itself only runs git, nu, docker and curl. create-release.yml stays on base: it only runs git and nu, building a changelog from git log and creating the release over the Forgejo HTTP API.

Add a Runner labels are annotated step to the check job so the split cannot silently regress: it fails the build when any runs-on: in .forgejo/workflows/ is not preceded by a comment block containing dev label: or base label:.

#MK-27

The check job compiles Rust natively on the runner (cargo fmt, clippy, build --all-targets, test) but requested `RUNS_ON_OPENSUSE_BASE_LATEST`. The base image ships cargo and rustc but no C toolchain, so any crate with a build script fails to link with ``error: linker `cc` not found``. A warm Swatinem/rust-cache masks it, so it only surfaces on a cold cache, which is every Cargo.toml / Cargo.lock change. Switch the job to `RUNS_ON_OPENSUSE_DEV_LATEST`, whose image carries cc/gcc/ld plus glibc and OpenSSL headers. Classify the other two jobs and record the reason inline. `build-binary.yml` stays on base: the musl compile happens inside `docker buildx`, the job itself only runs git, nu, docker and curl. `create-release.yml` stays on base: it only runs git and nu, building a changelog from `git log` and creating the release over the Forgejo HTTP API. Add a Runner labels are annotated step to the check job so the split cannot silently regress: it fails the build when any `runs-on:` in `.forgejo/workflows/` is not preceded by a comment block containing `dev label:` or `base label:`. #MK-27
fix(ci): run Check on the dev runner label
All checks were successful
Check / fmt + clippy + build + tests (pull_request) Successful in 26s
Create release / Create release from merged PR (pull_request) Has been skipped
e4640ac391
The check job compiles Rust natively on the runner (cargo fmt, clippy, build --all-targets, test) but requested `RUNS_ON_OPENSUSE_BASE_LATEST`. The base image ships cargo and rustc but no C toolchain, so any crate with a build script fails to link with ``error: linker `cc` not found``. A warm Swatinem/rust-cache masks it, so it only surfaces on a cold cache, which is every Cargo.toml / Cargo.lock change. Switch the job to `RUNS_ON_OPENSUSE_DEV_LATEST`, whose image carries cc/gcc/ld plus glibc and OpenSSL headers.

Classify the other two jobs and record the reason inline. `build-binary.yml` stays on base: the musl compile happens inside `docker buildx`, the job itself only runs git, nu, docker and curl. `create-release.yml` stays on base: it only runs git and nu, building a changelog from `git log` and creating the release over the Forgejo HTTP API.

Add a Runner labels are annotated step to the check job so the split cannot silently regress: it fails the build when any `runs-on:` in `.forgejo/workflows/` is not preceded by a comment block containing `dev label:` or `base label:`.

#MK-27
Claude-Run deleted branch fix/MK-27-check-dev-runner-label 2026-08-02 01:37:35 +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/monkey!52
No description provided.