Skip to content

tools: add Windows build and test workflow - #66434

Open
mcollina wants to merge 2 commits into
nodejs:mainfrom
mcollina:ci-windows-ccache
Open

mcollina wants to merge 2 commits into
nodejs:mainfrom
mcollina:ci-windows-ccache

Conversation

@mcollina

@mcollina mcollina commented Oct 1, 2026

Copy link
Copy Markdown
Member

Run JavaScript and native tests on Windows 2025 with Clang and Temporal. Cache compiler outputs with ccache on main and pull requests targeting main, using the Visual Studio compiler selected by vcbuild.


AI generated, reviewed by me.

Run JavaScript and native tests on Windows 2025 with Clang and Temporal.
Cache compiler outputs with ccache on main and pull requests targeting
main, using the Visual Studio compiler selected by vcbuild.

Assisted-by: pi
Signed-off-by: Matteo Collina <hello@matteocollina.com>
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/actions

@nodejs-github-bot nodejs-github-bot added the meta Issues and PRs related to the general management of the project. label Oct 1, 2026
Comment thread .github/workflows/test-windows.yml Outdated
path: ${{ env.CCACHE_DIR }}
key: windows-2025-${{ runner.arch }}-ccache-v1-${{ env.CCACHE_VERSION }}-${{ github.sha }}
restore-keys: |
windows-2025-${{ runner.arch }}-ccache-v1-${{ env.CCACHE_VERSION }}-

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.

This would cause havoc with our cache limits. Every new build is going to attempt to save a new bundled-up copy of the entire cache, with no deduplication. I don't know exactly how large the ccache for a Windows build is, but it'll only take (20GB ÷ cache size) builds for the entire repo's GHA cache to be evicted.

sccache does release win32 builds, although I don't know whether it supports the clang-cl masquerading.

Remove the ccache-based compiler cache from the Windows build and test
workflow. Saving the bundled cache on every build would quickly exhaust
the repository's GitHub Actions cache limits, as raised in review.

Assisted-by: pi
Signed-off-by: Matteo Collina <matteo.collina@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

meta Issues and PRs related to the general management of the project.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants