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]

Reply via email to