Skip to content

ci: functional tests no longer wait for unit tests; container npm cache - #2941

Merged
rolljee merged 1 commit into
2-devfrom
ci/functional-parallel-npm-cache
Sep 27, 2026
Merged

rolljee merged 1 commit into
2-devfrom
ci/functional-parallel-npm-cache

Conversation

@rolljee

@rolljee rolljee commented Sep 27, 2026

Copy link
Copy Markdown
Member

Two of the CI levers measured after #2938.

What

  1. functional-tests needs only build (was [build, unit-tests]). The unit tests were on the critical path — lint 0.8 min → unit ~2 min → functional — for a gate the functional jobs do not use. Trade-off: a unit-test failure no longer spares the 30 functional jobs.
  2. npm cache in the containerised installs. The functional and monkey jobs already restore ~/.npm through setup-node (cache: "npm", keyed by the lockfile), but the npm ci that runs inside the test-cluster container never used it. run-test-cluster.sh / run-monkey-tests.sh now mount NPM_CACHE_DIR (the runner's ~/.npm, set by the actions) as the container's npm cache (/var/npm, the image's NPM_CONFIG_CACHE) and run npm ci --prefer-offline. Unset NPM_CACHE_DIR (local runs) → unchanged behavior.

Measurement

Before/after figures for this PR's own run are posted as a comment once it completes (same method as the #2938 measurement: median over job/step timings of attempt 1).

🤖 Generated with Claude Code

- functional-tests needs only `build`. The unit tests sat on the critical
  path (~2.5 min) for a gate the functional jobs do not use.
- The containerised `npm ci` of the functional and monkey jobs mounts the
  runner's ~/.npm — which setup-node (`cache: "npm"`) already restores from
  the lockfile-keyed cache, and which nothing used — as the container's npm
  cache, with --prefer-offline: tarballs come from disk, not the registry.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@sonarqubecloud

Copy link
Copy Markdown

@rolljee
rolljee merged commit fe3b2f0 into 2-dev Sep 27, 2026
47 checks passed
@rolljee
rolljee deleted the ci/functional-parallel-npm-cache branch September 27, 2026 05:27
@kuzzlebot

kuzzlebot Bot commented Sep 28, 2026

Copy link
Copy Markdown

🎉 This PR is included in version 2.57.0-beta.3 🎉

The release is available on:

Your semantic-release bot 📦🚀

@kuzzlebot

kuzzlebot Bot commented Sep 30, 2026

Copy link
Copy Markdown

🎉 This PR is included in version 2.57.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@kuzzlebot kuzzlebot Bot added the released This issue/pull request has been released. label Sep 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

released on @beta released This issue/pull request has been released.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant