Skip to content

ci: pin the Node 26 matrix entry to 26.7 - #3027

Open
davidgamero wants to merge 1 commit into
kubernetes-client:mainfrom
davidgamero:ci/pin-node-26-7
Open

ci: pin the Node 26 matrix entry to 26.7#3027
davidgamero wants to merge 1 commit into
kubernetes-client:mainfrom
davidgamero:ci/pin-node-26-7

Conversation

@davidgamero

Copy link
Copy Markdown
Contributor

mock-fs broke on node 26.8 tschaub/mock-fs#447

proposing to pin tests to 26.7 while working on longer-term fix options

SERVICEACCOUNT_ROOT tests rely on mock-fs

Node 26.8.0 rewrote fs.readFile (nodejs/node#65327) to do open, fstat,
read and close in a single thread pool round trip, so binding.open is no
longer called from JS. mock-fs recovers the ReadFileContext prototype by
intercepting binding.open during a dummy readFile, so it now gets
undefined and throws at require time:

    TypeError: Cannot read properties of undefined (reading 'read')
        at exports.patchReadFileContext (mock-fs/lib/readfilecontext.js:40:30)

Because it throws on require rather than in a test, it takes out
config_test.ts and file_auth_test.ts in full.

The matrix entries are floating majors, so setup-node resolves '26' to
whatever the newest 26.x is at run time. That is why main went red on
the merge of kubernetes-client#3022 without any change to the code under test: the branch
last ran CI on 26.7.0, and by the time it merged five days later the
runner had picked up 26.8.1.

Pinning to 26.7 restores a green build. It is a stopgap: mock-fs has had
no functional release since February 2025 and the upstream report
(tschaub/mock-fs#447) is unanswered, so the durable fix is to stop
depending on it.
@kubernetes-prow

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: davidgamero

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubernetes-prow kubernetes-prow Bot added approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Aug 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant