Skip to content

chore(ci): align windows e2e variants with support policy COMPASS-10887 - #8312

Open
ivandevp wants to merge 4 commits into
mainfrom
COMPASS-10887-align-windows-e2e-support-policy
Open

chore(ci): align windows e2e variants with support policy COMPASS-10887#8312
ivandevp wants to merge 4 commits into
mainfrom
COMPASS-10887-align-windows-e2e-support-policy

Conversation

@ivandevp

@ivandevp ivandevp commented Aug 3, 2026

Copy link
Copy Markdown
Collaborator

Description

Windows e2e coverage now follows the same shape as the other platforms — full packaged-app suite on the actively supported version, time-to-first-query smoke on the minimum:

Variant Runs Distro Covers
test-packaged-app-windows full packaged-app e2e windows-2022-large Windows 11 / Server 2022 — actively supported, previously untested
test-packaged-app-min-windows (new) time-to-first-query smoke windows-vsCurrent-large Windows 10 / Server 2019 — deprecated-but-supported minimum

This also points node-gyp at a specific Python on Windows. node-gyp resolves an interpreter from PATH, and on windows-2022 MinGW's comes first — it is built without _ctypes, so every native module fails at configure with ModuleNotFoundError: No module named '_ctypes'. Both distros do ship a usable Python under C:\python\, so the install step now selects one explicitly (preferring C:\python\Current, the version the distro's toolchain selected) and exports it as npm_config_python.

Evergreen patches:

Checklist

  • New tests and/or benchmarks are included
  • Documentation is changed or added
  • If this change updates the UI, screenshots/videos are added and a design review is requested
  • If this change could impact the load on the MongoDB cluster, please describe the expected and worst case impact
  • I have signed the MongoDB Contributor License Agreement (https://www.mongodb.com/legal/contributor-agreement)

Motivation and Context

Follow-up to COMPASS-9087, which added minimum-version smoke coverage for Ubuntu, RHEL and macOS but skipped Windows.

  • Bugfix
  • New feature
  • Dependency update
  • Misc

Open Questions

Dependents

Types of changes

  • Backport Needed
  • Patch (non-breaking change which fixes an issue)
  • Minor (non-breaking change which adds functionality)
  • Major (fix or feature that would cause existing functionality to change)

Windows e2e now follows the same shape as the other platforms: the full
packaged-app suite on the actively supported version and the
time-to-first-query smoke on the minimum.

Evergreen has no Windows client images, so Server 2022 covers Windows 11 and
Server 2019 (windows-vsCurrent) covers Windows 10. Display names carry both
the client target and the image running it.

Server 2022 ships no Python of its own, so node-gyp falls back on MinGW's,
which lacks ctypes and fails every native build. Install a usable Python at
setup until the image provides one.
@ivandevp
ivandevp requested a review from a team as a code owner August 3, 2026 13:24
@ivandevp
ivandevp requested a review from Anemy August 3, 2026 13:24
…OMPASS-10887

The distros do ship Python, just under the toolchain directory rather than at
the root, so there is no need to install one. Point node-gyp at whichever is
provisioned, preferring the toolchain's selected version.
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