Skip to content

ci: cap job runtimes and reduce Node downloads - #3258

Merged
fengmk2 merged 15 commits into
mainfrom
ci/github-macos-runners
Oct 28, 2026
Merged

fengmk2 merged 15 commits into
mainfrom
ci/github-macos-runners

Conversation

@fengmk2

@fengmk2 fengmk2 commented Oct 28, 2026 •

Copy link
Copy Markdown
Member

Some CI jobs ran for over an hour, and snapshot jobs stalled while preparing Node.js. Main CI jobs get a 20-minute limit, except the existing 30-minute limit for certless-image-test. Binary-size builds get 30 minutes; their helper jobs get 10 minutes.

Use 20.20.2, 22.23.4, 24.22.1, and 26.12.1 in snapshot fixtures, with older pins for loader and migration boundaries. Prepare these runtimes before snapshot command timers start, using one version list for Unix and Windows. Keep empty-cache installation coverage.

Share installed runtimes across Rust integration tests while keeping project files isolated. Run the explicit-version test outside the repository so it does not install the repository's pnpm version.

Read VP_NODE_DIST_MIRROR from repository Actions variables across Rust, snapshot, CLI, installer, ecosystem, and Docker tests. Pass it into isolated snapshot commands, Docker builds, and test containers. Fixture overrides still take precedence. Use https://nodejs.org/dist when the repository variable is empty or unset. Musl jobs keep https://unofficial-builds.nodejs.org/download/release for compatible archives.

Enable VP_LOG=vp_js_runtime=info during runtime preparation to report download stages, retries, and archive sizes. Use trace timestamps to identify slow stages. Report total preparation time for each Node version on Unix and Windows.

Set the generator template smoke test limit to 35 seconds to allow slow CI startup. Keep the subprocess limit at 30 seconds and report subprocess errors.

A broken create-vite release returned success without generating project files. Fail installer checks when scaffolding produces no package.json or the build fails, including Alpine and Windows shells. Load the generated shell environment in Alpine so vp env doctor sees both shim directories.

The Docker browser fixture pins Vitest 4, which conflicts with the bundled Vitest 5 runner. Migrate the fixture with the installed toolchain before checking its lockfile and running Chromium.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 28, 2026 •

Copy link
Copy Markdown

🚀 Deploying Preview to Cloudflare 🚀

Preview URL: https://ci-github-macos-runners-viteplus-dev.voidzero-docs.workers.dev (commit 6055cd3)

This URL reflects your latest Preview deployment

Preview Deployments by commit

Status Deployment URL Commit Updated (UTC) See this deployment's details
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://7b95a466-viteplus-dev.voidzero-docs.workers.dev 6055cd3 2026-10-28T09:57:49.556Z Visit the dashboard ↗
  • Build: In progress 🔵

View logs ↗
e4bdc60 2026-10-28T09:48:50.679Z View logs ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://c5dfccbe-viteplus-dev.voidzero-docs.workers.dev 0a80239 2026-10-28T09:37:49.820Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://da198d9b-viteplus-dev.voidzero-docs.workers.dev 3a0e333 2026-10-28T09:34:12.681Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://638e404c-viteplus-dev.voidzero-docs.workers.dev 6a05714 2026-10-28T09:30:11.107Z Visit the dashboard ↗
  • Build: Failed ❌

View logs ↗
c542e6b 2026-10-28T09:04:40.246Z View logs ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://6cb8e2e6-viteplus-dev.voidzero-docs.workers.dev 1113716 2026-10-28T08:47:25.302Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://3b0c666f-viteplus-dev.voidzero-docs.workers.dev 8babc23 2026-10-28T08:41:10.917Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://60f00737-viteplus-dev.voidzero-docs.workers.dev df7ffb7 2026-10-28T08:17:59.403Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://e81f6eea-viteplus-dev.voidzero-docs.workers.dev 20fd8ed 2026-10-28T07:39:29.999Z Visit the dashboard ↗

View all previews: View all previews ↗

@github-actions

github-actions Bot commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

CLI artifact sizes (6055cd3)

Final release artifacts built by the canonical build-upstream and build-windows-cli actions.
The dist rows use the Linux build. The core total excludes .node files to match the release artifact.

Artifact Format Base PR Change
packages/cli/dist Directory total 2.26 MiB 2.26 MiB 0 B (0.00%)
packages/core/dist Directory total 4.07 MiB 4.07 MiB 0 B (0.00%)
Combined package dist Directory total 6.33 MiB 6.33 MiB 0 B (0.00%)
vp (Linux x64) Binary 8.26 MiB 8.26 MiB +48 B (+0.00%)
vp (Linux x64) gzip -9 3.77 MiB 3.77 MiB +657 B (+0.02%)
NAPI (Linux x64) Binary 35.51 MiB 35.51 MiB 0 B (0.00%)
NAPI (Linux x64) gzip -9 14.14 MiB 14.14 MiB 0 B (0.00%)
vp (macOS ARM64) Binary 5.39 MiB 5.39 MiB 0 B (0.00%)
vp (macOS ARM64) gzip -9 3.21 MiB 3.21 MiB +173 B (+0.01%)
NAPI (macOS ARM64) Binary 42.23 MiB 42.28 MiB +48.38 KiB (+0.11%)
NAPI (macOS ARM64) gzip -9 18.27 MiB 18.28 MiB +7.19 KiB (+0.04%)
vp (Windows x64) Binary 6.11 MiB 6.11 MiB +1.50 KiB (+0.02%)
vp (Windows x64) gzip -9 2.83 MiB 2.83 MiB +703 B (+0.02%)
NAPI (Windows x64) Binary 31.53 MiB 31.53 MiB 0 B (0.00%)
NAPI (Windows x64) gzip -9 12.84 MiB 12.84 MiB -2 B (-0.00%)
Trampoline (Windows x64) Binary 13.50 KiB 13.50 KiB 0 B (0.00%)
Trampoline (Windows x64) gzip -9 7.09 KiB 7.09 KiB +1 B (+0.01%)
Installer (Windows x64) Binary 4.67 MiB 4.67 MiB +512 B (+0.01%)
Installer (Windows x64) gzip -9 2.24 MiB 2.24 MiB +355 B (+0.02%)

@fengmk2 fengmk2 changed the title ci: switch macOS jobs back to GitHub runners ci: use GitHub macOS runners and limit job runtimes Oct 28, 2026
@fengmk2 fengmk2 changed the title ci: use GitHub macOS runners and limit job runtimes ci: switch macOS runners, cap jobs, and consolidate Node versions Oct 28, 2026
@fengmk2 fengmk2 changed the title ci: switch macOS runners, cap jobs, and consolidate Node versions ci: cap job runtimes and reduce Node downloads Oct 28, 2026
@fengmk2 fengmk2 self-assigned this Oct 28, 2026
@fengmk2
fengmk2 marked this pull request as ready for review October 28, 2026 09:51
@fengmk2
fengmk2 requested a review from Brooooooklyn October 28, 2026 09:52
@fengmk2
fengmk2 merged commit d43280a into main Oct 28, 2026
143 checks passed
@fengmk2
fengmk2 deleted the ci/github-macos-runners branch October 28, 2026 12:41
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