Skip to content

ci: Keep Namespace cache volumes complete and cache the pnpm binary - #25569

Merged
JPeer264 merged 2 commits into
developfrom
jp/namespace-cache-tags
Oct 21, 2026
Merged

JPeer264 merged 2 commits into
developfrom
jp/namespace-cache-tags

Conversation

@JPeer264

Copy link
Copy Markdown
Member

This gives the E2E jobs their own Namespace cache tag and removes the tag from jobs that do not use a cache. A new mount-pnpm-store action mounts the pnpm store and the npm cache before install-pnpm, so pnpm itself also comes from the cache volume.

Why

Namespace keeps the volume of the last job that exits cleanly. E2E jobs and jobs without cache use often finished last, so Build got no node_modules in about 8 of 10 runs. pnpm self-update also downloaded pnpm in every job, which took up to 130s.

Cache decisions

cache: pnpm runs pnpm, so it cannot come before install-pnpm. Until Namespace changes this, mount-pnpm-store sets PNPM_CONFIG_STORE_DIR itself.

@JPeer264
JPeer264 marked this pull request as ready for review October 20, 2026 16:37
@JPeer264 JPeer264 self-assigned this Oct 20, 2026
@JPeer264
JPeer264 requested a review from andreiborza October 20, 2026 16:38

@andreiborza andreiborza left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ja passt

@JPeer264
JPeer264 enabled auto-merge (squash) October 20, 2026 16:39
@JPeer264
JPeer264 disabled auto-merge October 20, 2026 17:23
JPeer264 and others added 2 commits October 21, 2026 08:48
Namespace keeps the cache volume of every job that exits cleanly, and the
last write wins. E2E jobs and jobs without cache use had the same tag as
the dependency volume, so they often committed an empty or E2E-only
volume, and the next Build installed all dependencies again. E2E jobs
now use their own tag, and jobs without cache use have no tag.

`pnpm/action-setup` downloads pnpm with `pnpm self-update` in every job.
The new `mount-pnpm-store` action mounts the pnpm store and the npm
cache before `install-pnpm`, so both downloads come from the cache
volume. The `pnpm` mode of nscloud-cache-action runs pnpm, so the action
sets `PNPM_CONFIG_STORE_DIR` itself until the mode works without pnpm.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@JPeer264
JPeer264 force-pushed the jp/namespace-cache-tags branch from 12b109e to b18c6c1 Compare October 21, 2026 06:48
@github-actions

Copy link
Copy Markdown
Contributor

size-limit report 📦

Compared: d992a4d (PR test merge using develop at 3f00b10)

Against: 3f00b10 (develop) · base run #62855

✅ Baseline matches: this diff contains only this PR's changes.

Path Size % Change Change
@sentry/browser 29.88 kB - -
@sentry/browser - with treeshaking flags 28.02 kB - -
@sentry/browser - with treeshaking flags tracing without tracing 27.92 kB - -
@sentry/browser (incl. Tracing) 52.07 kB - -
@sentry/browser (incl. Tracing + Span Streaming) 52.07 kB - -
@sentry/browser (incl. Tracing, Profiling) 55.02 kB - -
@sentry/browser (incl. Tracing, Replay) 91.82 kB - -
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 80.68 kB - -
@sentry/browser (incl. Tracing, Replay with Canvas) 96.55 kB - -
@sentry/browser (incl. Tracing, Replay, Feedback) 109.49 kB - -
@sentry/browser (incl. Feedback) 47.4 kB - -
@sentry/browser (incl. sendFeedback) 34.94 kB - -
@sentry/browser (incl. FeedbackAsync) 40.05 kB - -
@sentry/browser (incl. Metrics) 30.9 kB - -
@sentry/browser (incl. Logs) 31.18 kB - -
@sentry/browser (incl. Metrics & Logs) 31.81 kB - -
@sentry/react 31.7 kB - -
@sentry/react (incl. Tracing) 54.39 kB - -
@sentry/vue 38.04 kB - -
@sentry/vue (incl. Tracing) 55.01 kB - -
@sentry/svelte 29.9 kB - -
@sentry/remix (Remix 3 client bundle) 57.08 kB - -
CDN Bundle 31.64 kB - -
CDN Bundle (incl. Tracing) 52.58 kB - -
CDN Bundle (incl. Logs, Metrics) 33.84 kB - -
CDN Bundle (incl. Tracing, Logs, Metrics) 54.52 kB - -
CDN Bundle (incl. Replay, Logs, Metrics) 74.77 kB - -
CDN Bundle (incl. Tracing, Replay) 90.25 kB - -
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 92.18 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback) 96.4 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 98.34 kB - -
CDN Bundle - uncompressed 93.18 kB - -
CDN Bundle (incl. Tracing) - uncompressed 156.03 kB - -
CDN Bundle (incl. Logs, Metrics) - uncompressed 99.72 kB - -
CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 161.99 kB - -
CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 229.76 kB - -
CDN Bundle (incl. Tracing, Replay) - uncompressed 276.2 kB - -
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 282.14 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 289.9 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 295.84 kB - -
@sentry/nextjs (client) 57.28 kB - -
@sentry/sveltekit (client) 52.45 kB - -
@sentry/core/server 41.75 kB - -
@sentry/core/browser 13.81 kB - -
@sentry/node 155.26 kB +0.01% +1 B 🔺
@sentry/node/import (ESM hook with diagnostics-channel injection) 84.06 kB - -
@sentry/node - without tracing 96.92 kB - -
@sentry/node - without channel injection 133.24 kB +0.01% +1 B 🔺
@sentry/aws-serverless 105.1 kB +0.01% +1 B 🔺
@sentry/cloudflare (withSentry) - minified 210.89 kB - -
@sentry/cloudflare (withSentry) 523.17 kB - -
@sentry/nextjs/cloudflare (withSentry) - minified 230.51 kB - -

View base workflow run

@JPeer264
JPeer264 merged commit 857f1ec into develop Oct 21, 2026
743 of 747 checks passed
@JPeer264
JPeer264 deleted the jp/namespace-cache-tags branch October 21, 2026 07:02
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