Title: test-shared fails on V8 cache misses without a Cachix token · Issue #64554 · nodejs/node · GitHub
Open Graph Title: test-shared fails on V8 cache misses without a Cachix token · Issue #64554 · nodejs/node
X Title: test-shared fails on V8 cache misses without a Cachix token · Issue #64554 · nodejs/node
Description: The Test Shared libraries workflow fails when the separate V8 derivation is not available in Cachix and the workflow has no CACHIX_AUTH_TOKEN, as is the case for fork pull requests. On a V8 cache miss, the aarch64-linux: Cache V8 build j...
Open Graph Description: The Test Shared libraries workflow fails when the separate V8 derivation is not available in Cachix and the workflow has no CACHIX_AUTH_TOKEN, as is the case for fork pull requests. On a V8 cache m...
X Description: The Test Shared libraries workflow fails when the separate V8 derivation is not available in Cachix and the workflow has no CACHIX_AUTH_TOKEN, as is the case for fork pull requests. On a V8 cache m...
Opengraph URL: https://github.com/nodejs/node/issues/64554
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"test-shared fails on V8 cache misses without a Cachix token","articleBody":"The `Test Shared libraries` workflow fails when the separate V8 derivation is not available in Cachix and the workflow has no `CACHIX_AUTH_TOKEN`, as is the case for fork pull requests.\n\nOn a V8 cache miss, the `aarch64-linux: Cache V8 build` job builds V8 and uploads `libv8-aarch64-linux.nar`. The downstream shared-library matrix then contains two artifacts:\n\n- The raw slim `.tar.gz` artifact\n- `libv8-aarch64-linux.nar`\n\nThe first `actions/download-artifact` step in `build-shared.yml` does not specify an artifact name or pattern, so it downloads both. When multiple artifacts are selected, the action creates one directory per artifact. This places the raw tarball at:\n\n```text\ntarballs/\u003ctarball-name\u003e.tar.gz/\u003ctarball-name\u003e.tar.gz\n```\n\nThe subsequent command therefore matches the outer directory:\n\n```sh\ntar xzf tarballs/*.tar.gz -C \"$RUNNER_TEMP\"\n```\n\nand fails with:\n\n```text\ntar (child): tarballs/node-v27.0.0-nightly...-slim.tar.gz: Cannot read: Is a directory\ntar (child): Error is not recoverable: exiting now\ntar: Child returned status 2\ntar: Error is not recoverable: exiting now\n```\n\nAll aarch64 OpenSSL and BoringSSL matrix jobs fail before configuring, building, or testing Node.js.\n\n### Reproduction\n\nThe failure was observed in:\n\n- Workflow run: https://github.com/nodejs/node/actions/runs/29568658756\n- Representative failed job: https://github.com/nodejs/node/actions/runs/29568658756/job/87858819836\n\nThe triggering pull request changed `configure.py`, which participates in the separate V8 derivation. This produced a new derivation that was not in Cachix. The V8 prerequisite consequently built V8 and uploaded the local NAR artifact. Said PR no longer changes configure.py to get around the GHA issue.\n\nThe failure is deterministic whenever both conditions hold:\n\n1. The V8 derivation misses Cachix.\n2. The workflow cannot push to Cachix and uploads the local V8 NAR artifact.\n\n### Regression\n\nThis appears to have been introduced by https://github.com/nodejs/node/pull/64423, which changed the tarball uploads to use `archive: false` and removed the previous `name: tarballs` filters.\n\ncc @aduh95 ","author":{"url":"https://github.com/panva","@type":"Person","name":"panva"},"datePublished":"2026-07-17T10:45:34.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":1},"url":"https://github.com/64554/node/issues/64554"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:1ec1f41b-0b03-d962-e872-f179b91faddf |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | A046:FE622:787140:A599F7:6A62E15C |
| html-safe-nonce | 2ce877bfdd0cb21b066032f82c7ad083ba55e9b6772e92f2a2c8afcb3b22e823 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBMDQ2OkZFNjIyOjc4NzE0MDpBNTk5Rjc6NkE2MkUxNUMiLCJ2aXNpdG9yX2lkIjoiNDIxOTU5NTMxNjEzOTMxOTY0NCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | c659814d0ff5ce5ed63ea30b7420a1dfb860f842ca7e0c1903cc017530901c6e |
| hovercard-subject-tag | issue:4910574491 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/nodejs/node/64554/issue_layout |
| twitter:image | https://opengraph.githubassets.com/75ca3104871b8549436307695d79dd68e7ed78c39a3b32b420305140b611ff21/nodejs/node/issues/64554 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/75ca3104871b8549436307695d79dd68e7ed78c39a3b32b420305140b611ff21/nodejs/node/issues/64554 |
| og:image:alt | The Test Shared libraries workflow fails when the separate V8 derivation is not available in Cachix and the workflow has no CACHIX_AUTH_TOKEN, as is the case for fork pull requests. On a V8 cache m... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | panva |
| hostname | github.com |
| expected-hostname | github.com |
| None | df33b1b61ee7b9a0af988199bfc3503c9c1acafb1f1d40e1f140ea7c84f890dd |
| turbo-cache-control | no-preview |
| go-import | github.com/nodejs/node git https://github.com/nodejs/node.git |
| octolytics-dimension-user_id | 9950313 |
| octolytics-dimension-user_login | nodejs |
| octolytics-dimension-repository_id | 27193779 |
| octolytics-dimension-repository_nwo | nodejs/node |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 27193779 |
| octolytics-dimension-repository_network_root_nwo | nodejs/node |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | d41cd1bdb290013455c0ac430fa755621733f5eb |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width