Skip to content

ci(windows): migrate integration matrix from windows-2022 to windows-2025 - #395

Merged
lowlydba merged 6 commits into
mainfrom
lowlydba-windows-arm-runners-ci
Sep 5, 2026
Merged

ci(windows): migrate integration matrix from windows-2022 to windows-2025#395
lowlydba merged 6 commits into
mainfrom
lowlydba-windows-arm-runners-ci

Conversation

@lowlydba

@lowlydba lowlydba commented Sep 5, 2026

Copy link
Copy Markdown
Owner

What

Moves the Windows integration test matrix in ansible-test-windows.yml from windows-2022 to windows-2025, and cleans up two adjacent CI reliability issues found along the way:

  • windows-2022windows-2025: newer runner image, same OS family. Validated with a probe job (single windows-2025 leg run alongside the existing matrix) before switching the whole matrix over — no WinRM, WSL1, or SQL Server install compatibility issues observed.
  • Retry WSL apt-get: Vampire/setup-wsl's additional-packages did a one-shot apt-get update/install that could fail on a transient Ubuntu archive mirror hash mismatch. Split it into its own step with Acquire::Retries and a 3-attempt retry loop, matching the existing retry pattern already used for mssqlsuite/ansible-galaxy in this workflow.
  • Removed the "Why is MongoDB running? Disable it." step: both windows-2022 and windows-2025 runner images ship MongoDB Stopped/Disabled by default now, so the step was dead weight.

Why

  • windows-11-arm was considered for faster Windows CI but isn't viable: WSL2/nested virtualization isn't supported on ARM runners, and SQL Server has no ARM64 build. windows-2025 is a safer, low-risk incremental update instead.
  • SQL Server 2025 support and any other mssqlsuite/dbatools capabilities aren't gated by the runner OS, so this change is scoped to just the OS bump plus the two unrelated reliability fixes above.

Validation

  • zizmor and YAML parsing pass locally.
  • A temporary windows-2025 probe job (matrix include) ran alongside the existing windows-2022 matrix without early failure before the full matrix switch.
  • This PR's own CI run is the first full validation of the entire matrix on windows-2025 — please confirm all jobs pass before merging.

Co-authored-by: Copilot App 223556219+Copilot@users.noreply.github.com

lowlydba and others added 4 commits September 4, 2026 22:44
Split the WSL package install out of Vampire/setup-wsl's one-shot
additional-packages so we can retry apt-get update/install (with
Acquire::Retries) instead of failing the whole job on a transient
archive.ubuntu.com mirror hash mismatch.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Add a single windows-2025 job (continue-on-error) alongside the
existing windows-2022 matrix to empirically validate WinRM/WSL/SQL
Server install compatibility before deciding on a full migration.
Temporary, to be removed once results are gathered.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Both windows-2022 and windows-2025 runner images ship MongoDB
Stopped/Disabled by default now, so this defensive step is dead weight.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
…2025

Early results from a windows-2025 probe job (WinRM, WSL1, mssqlsuite
SQL Server install) show no compatibility issues, so switch the whole
matrix over instead of running both.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot AI balanced review requested due to automatic review settings September 5, 2026 03:10

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

The full eight-leg Windows 2025 integration matrix is still running and must complete successfully before merge.

Pull request overview

Migrates Windows integration CI to windows-2025 and improves setup reliability.

Changes:

  • Updates the integration matrix and job names to Windows 2025.
  • Adds retry handling for WSL package installation.
  • Removes obsolete MongoDB service handling.
File summaries
File Description
.github/workflows/ansible-test-windows.yml Updates the runner matrix and WSL setup steps.
Review details
  • Files reviewed: 1/1 changed files
  • Comments generated: 0
  • Review effort level: Balanced

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

lowlydba and others added 2 commits September 4, 2026 23:12
ConfigureRemotingForAnsible.ps1 (run immediately before) already starts
the WinRM service, sets it to auto-start, creates the HTTP/HTTPS
listeners, opens the required firewall rules, and self-tests both
transports. The separate 'winrm quickconfig -force' step ran against
an already-fully-configured WinRM and did nothing.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
…entation

The script moved from ansible/ansible to ansible/ansible-documentation.
Pin to a current commit there and link the devel URL for future updates.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@lowlydba
lowlydba merged commit 97fe652 into main Sep 5, 2026
24 checks passed
@lowlydba
lowlydba deleted the lowlydba-windows-arm-runners-ci branch September 5, 2026 13:35
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