alamb opened a new pull request, #11803: URL: https://github.com/apache/arrow-rs/pull/11803
# Which issue does this PR close? Related to apache/datafusion#25088 (CI takes hours to start) and https://issues.apache.org/jira/browse/INFRA-28374 # Rationale for this change CI jobs in this repo are currently waiting a long time for a runner before they even start. Looking at recent PR runs, jobs that complete in 10-20 seconds spent anywhere from 17 minutes to almost 3 hours queued waiting for an `ubuntu-latest` runner: | Job | Queued | Ran for | |-----|--------|---------| | dev / Release Audit Tool (RAT) | 2h 53m | 12s | | dev / Spell Check with Typos | 2h 53m | 7s | | dev / Release Audit Tool (RAT) | 2h 48m | 16s | | audit / Audit | 19m | 18s | | audit / Audit | 16m | 20s | (from https://github.com/apache/arrow-rs/actions runs on 2026-10-20 and 2026-10-21) The ASF organization shares a pool of `ubuntu-latest` runners, so every lightweight job we put in that queue competes with full Rust builds across all Apache projects. GitHub's `ubuntu-slim` label (1 vCPU, 5 GB RAM) is a separate, cheaper pool that is intended for exactly this kind of job. We already use it for `take`, `stale`, `dev_pr`, `codeql`, `prettier` and `Required Checks`. # What changes are included in this PR? Move the remaining jobs that do not compile anything onto `ubuntu-slim`: | Workflow | Job | What it does | |----------|-----|--------------| | `ci.yml` | Select and validate CI suites | python scripts | | `audit.yml` | Audit | prebuilt `cargo-audit` binary against `Cargo.lock` | | `dev.yml` | Release Audit Tool (RAT) | RAT jar + python script | | `dev.yml` | Spell Check with Typos | prebuilt `typos` binary | | `docs.yml` | deploy | download artifact + push to `gh-pages` | | `release.yml` | Publish | `gh release create` | Two small adjustments were needed because `ubuntu-slim` ships a minimal image (Python, Node, gh, git; no JDK, no Rust toolchain): - RAT: add an `actions/setup-java` step (same pinned version as `parquet.yml`) since `run-rat.sh` needs `java` - Audit: run `cargo-audit audit` instead of `cargo audit`, since there is no `cargo` to dispatch the subcommand. This is the same invocation `cargo` itself makes. Jobs that use a `container:` (cargo fmt, cargo-shear, MSRV, all test/clippy jobs) are left on `ubuntu-latest`: slim runners cannot run container jobs, and rewriting those to install a toolchain is a separate change. Note `ubuntu-slim` enforces a 15 minute job timeout. All of the moved jobs complete in well under a minute. # Are these changes tested? By CI on this PR: `.github/**` changes route every suite, so the moved `changes`, `audit`, `rat` and `typos` jobs all run here. The `docs` deploy and `release` jobs only run on pushes to `main` / tags, so those will be verified after merge. # Are there any user-facing changes? No -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
