Skip to content

ci: migrate runners to namespace#310

Merged
wan9chi merged 6 commits into
mainfrom
ci/migrate-runner-to-namespace
Apr 1, 2026
Merged

ci: migrate runners to namespace#310
wan9chi merged 6 commits into
mainfrom
ci/migrate-runner-to-namespace

Conversation

@fengmk2

@fengmk2 fengmk2 commented Mar 30, 2026

Copy link
Copy Markdown
Member

Summary

  • Migrate GitHub-hosted Linux/macOS CI runners to namespace.so runners for faster builds (Windows remains on GitHub-hosted)
  • Use pipx + mlugg/setup-zig for cargo-zigbuild toolchain on namespace runners (no pre-installed pip/zig)
  • Improve CI conditionals to use matrix.target instead of matrix.os for more robust platform checks
  • Simplify duplicated build/test steps using matrix variables (cargo_cmd, build_target)
  • Add Sponsors section to README crediting namespace.so

Ref: voidzero-dev/vite-plus#1066

CI Speed Comparison

Job GitHub-hosted Namespace Change
Clippy 60s 72s +12s (cold cache)
Format 65s 65s same
Test Linux 119s 88s -31s (26% faster)
Test macOS arm64 93s 60s -33s (35% faster)
Test macOS x86_64 217s 138s -79s (36% faster)
Test musl 250s 113s -137s (55% faster)
Test Windows 267s 286s +19s (still GH-hosted, variance)

Linux and macOS jobs are 26–55% faster. Overall wall time is bottlenecked by Windows (still on GitHub-hosted).

Test plan

  • CI passes on all platforms (Linux, macOS, Windows)

fengmk2 added 5 commits March 30, 2026 14:35
Migrate GitHub-hosted Linux/macOS runners to namespace.so runners for
faster CI. Windows remains on GitHub-hosted runners.

Also improve CI conditionals to use matrix.target instead of matrix.os
for more robust platform checks.
Namespace runners use externally-managed Python (PEP 668), so `pip
install` is blocked. Switch to `pipx install` which handles the
virtual environment automatically.
Namespace runners don't have zig pre-installed unlike GitHub-hosted
runners. Add mlugg/setup-zig to both clippy and test jobs.
@fengmk2 fengmk2 changed the title ci: migrate runner to namespace ci: migrate runners to namespace Mar 30, 2026
@fengmk2 fengmk2 marked this pull request as ready for review March 30, 2026 07:06
@fengmk2 fengmk2 requested a review from wan9chi March 30, 2026 07:06
@wan9chi wan9chi merged commit 34c36aa into main Apr 1, 2026
9 checks passed
@wan9chi wan9chi deleted the ci/migrate-runner-to-namespace branch April 1, 2026 08:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants