Skip to content

[release/v7.5] Integrate Windows packaging into windows-ci workflow using reusable workflow#26390

Merged
TravisEz13 merged 2 commits intoPowerShell:release/v7.5from
TravisEz13:backport-26224
Nov 5, 2025
Merged

[release/v7.5] Integrate Windows packaging into windows-ci workflow using reusable workflow#26390
TravisEz13 merged 2 commits intoPowerShell:release/v7.5from
TravisEz13:backport-26224

Conversation

@TravisEz13
Copy link
Member

Backport of #26224 to release/v7.5

Triggered by @TravisEz13 on behalf of @copilot

Original CL Label: CL-BuildPackaging

/cc @PowerShell/powershell-maintainers

Merge Conflicts

During the backport, merge conflicts were encountered in .github/actions/infrastructure/path-filters/action.yml.

Conflict details:

  • The main branch includes a globalConfigChanged variable that doesn't exist in release/v7.5
  • The PR's packaging detection logic referenced this variable

Resolution:

  • Removed references to globalConfigChanged from the packaging detection logic
  • Kept the core packaging detection functionality intact (detecting changes to workflows, wix assets, props, csproj files, and packaging tools)
  • The backport successfully adds packaging change detection without dependencies on code that doesn't exist in v7.5

Impact

Tooling Impact

  • Required tooling change
  • Optional tooling change (include reasoning)

This PR integrates Windows packaging into the windows-ci workflow using a reusable workflow. It adds packaging change detection to path filters and creates a new reusable workflow for Windows packaging. This improves CI efficiency by only running packaging jobs when packaging-related files change.

Regression

  • Yes
  • No

This is not a regression fix. It's an improvement to the CI/CD pipeline.

Testing

The original PR was tested in the main branch CI pipeline. The backport maintains the same functionality, with the only difference being the removal of globalConfigChanged references (which don't exist in v7.5). The packaging detection logic and workflow integration remain intact.

Manual verification:

  • Confirmed the path filter logic correctly detects packaging-related changes
  • Verified the new reusable workflow follows the same pattern as other workflows in v7.5
  • Tested that the conflict resolution preserves the intent of the original PR

Risk

  • High
  • Medium
  • Low

Medium risk - This change modifies the CI/CD pipeline by:

  • Adding new packaging change detection logic
  • Introducing a new reusable workflow for Windows packaging
  • Modifying the windows-ci workflow to conditionally run packaging jobs

While the changes are well-contained and follow existing patterns, any CI/CD modifications carry inherent risk of affecting build and release processes. The conflict resolution required adaptation of the code for v7.5, which adds a small additional risk factor.

…orkflow (PowerShell#26224)

Co-authored-by: copilot-swe-agent[bot] <[email protected]>
Co-authored-by: TravisEz13 <[email protected]>
Co-authored-by: Travis Plunk <[email protected]>
@TravisEz13 TravisEz13 requested a review from a team as a code owner November 5, 2025 18:39
Copilot AI review requested due to automatic review settings November 5, 2025 18:39
@TravisEz13 TravisEz13 added the CL-BuildPackaging Indicates that a PR should be marked as a build or packaging change in the Change Log label Nov 5, 2025
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces a new reusable Windows packaging workflow that can be triggered conditionally in the Windows CI pipeline based on packaging-related file changes. The goal is to validate Windows packages on pull requests that modify packaging code without running the full packaging matrix on every CI run.

Key changes:

  • Adds conditional Windows packaging job to CI that only runs when packaging files change
  • Creates reusable packaging workflow with matrix strategy for multiple architectures and channels
  • Updates path filter to detect packaging-related changes

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
.github/workflows/windows-packaging-reusable.yml New reusable workflow defining Windows packaging matrix for x64/x86/arm64 architectures across preview and stable channels
.github/workflows/windows-ci.yml Adds conditional packaging job and artifact directory environment variables
.github/actions/infrastructure/path-filters/action.yml Adds packagingChanged output to detect changes to packaging-related files

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@TravisEz13 TravisEz13 merged commit 053db98 into PowerShell:release/v7.5 Nov 5, 2025
35 checks passed
@TravisEz13 TravisEz13 deleted the backport-26224 branch November 5, 2025 19:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CL-BuildPackaging Indicates that a PR should be marked as a build or packaging change in the Change Log

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants