Skip to content

Bring Release Changes from v7.6.0-preview.6#26627

Merged
daxian-dbw merged 4 commits intomasterfrom
bringReleaseChangesToMaster
Dec 18, 2025
Merged

Bring Release Changes from v7.6.0-preview.6#26627
daxian-dbw merged 4 commits intomasterfrom
bringReleaseChangesToMaster

Conversation

@jshigetomi
Copy link
Collaborator

@jshigetomi jshigetomi commented Dec 17, 2025

  • Merged PR 37931: Do not install dotnet-format tool for official builds
  • Merged PR 37937: Fix Windows Signing stage and MSIX create stage
  • Correct conditional variables references

PR Summary

This pull request primarily updates build and pipeline scripts to improve environment variable handling and streamline .NET tool installation logic. The changes ensure more robust and accurate behavior during CI/CD and local development scenarios.

Pipeline condition improvements:

  • Updated YAML conditions in .pipelines/templates/release-MSIX-Publish.yml to use variables['STABLE'], variables['LTS'], and variables['PREVIEW'] instead of string interpolation (e.g., '$(STABLE)'). This makes the condition checks more reliable and consistent in Azure Pipelines. [1] [2]

.NET tool installation logic:

  • Modified the Start-PSBootstrap function in build.psm1 to only install .NET global tools when not running in a CI environment ($env:TF_BUILD), and only when the scenario is DotNet or Both. This prevents unnecessary installations in CI and clarifies when tools are installed locally.

PR Context

PR Checklist

adityapatwardhan and others added 3 commits December 17, 2025 16:13
Do not install dotnet-format tool for official builds

----
Configuration change to skip installing the dotnet-format tool during official builds.
This pull request updates the build script to conditionally install the .NET SDK and dotnet-format tool only when not running in an official build environment.
- **`/build.psm1`**: Wraps the .NET installation block in an `if (-not $env:TF_BUILD)` condition, preventing the installation of the dotnet-format tool on official builds.
- **`/build.psm1`**: Maintains existing behavior for non-official builds while ensuring that official builds remain streamlined.
<!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->
Fix Windows Signing stage and MSIX create stage

----
#### AI description  (iteration 1)
#### PR Classification
Bug fix addressing issues in the Windows Signing and MSIX creation stages.

#### PR Summary
This pull request fixes the Windows signing and MSIX package creation processes. It ensures that dotnet is available early in the bootstrap and corrects YAML condition expressions for package tasks.
- `build.psm1`: Moved the dotnet availability check to an earlier section, ensuring that .NET SDK dependencies are met before proceeding.
- `.pipelines/templates/package-create-msix.yml`: Updated condition expressions to use variable dictionary references for both preview and stable/LTS package tasks.
<!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->
Copilot AI review requested due to automatic review settings December 17, 2025 22:15
@jshigetomi jshigetomi requested a review from a team as a code owner December 17, 2025 22:15
@jshigetomi jshigetomi added the CL-BuildPackaging Indicates that a PR should be marked as a build or packaging change in the Change Log label Dec 17, 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 pull request brings in changes from the v7.6.0-preview.6 release, focusing on pipeline condition fixes and build tool installation logic improvements. The changes correct how Azure Pipelines evaluates runtime variables and optimizes when .NET global tools are installed during the bootstrap process.

Key changes:

  • Fixed Azure Pipelines condition syntax to properly evaluate runtime variables using variables['VAR'] instead of string interpolation '$(VAR)'
  • Modified .NET global tool installation to skip in CI environments (TF_BUILD) and restricted tool installation to specific scenarios

Reviewed changes

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

File Description
.pipelines/templates/release-MSIX-Publish.yml Corrected condition syntax for MSIX publishing tasks to use variables['STABLE'], variables['LTS'], and variables['PREVIEW'] instead of string interpolation, ensuring proper runtime variable evaluation
build.psm1 Updated Start-PSBootstrap to skip .NET global tool installation in CI environments and changed scenario checking logic for tool installation

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

build.psm1 Outdated
# Ensure dotnet is available
Find-Dotnet
if (-not $env:TF_BUILD) {
if ($Scenario -eq 'DotNet' -or $Scenario -eq 'Both') {
Copy link
Member

Choose a reason for hiding this comment

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

This is wrong. The All is a more recent change in master. The Both value in release branch is outdated. So, you should keep the master code as is, and only add the if (-not $env:TF_BUILD) { and move Find-Dotnet as the ADO PRs did.

@microsoft-github-policy-service microsoft-github-policy-service bot added the Waiting on Author The PR was reviewed and requires changes or comments from the author before being accept label Dec 17, 2025
@microsoft-github-policy-service microsoft-github-policy-service bot removed the Waiting on Author The PR was reviewed and requires changes or comments from the author before being accept label Dec 17, 2025
@daxian-dbw daxian-dbw merged commit 9ef5ec4 into master Dec 18, 2025
40 checks passed
@daxian-dbw daxian-dbw deleted the bringReleaseChangesToMaster branch December 18, 2025 00:22
kilasuit pushed a commit to kilasuit/PowerShell that referenced this pull request Jan 2, 2026
…Shell#26627)

1. Fix the conditions used in `release-MSIX-Publish.yml`
2. Update `build.psm1` to not install dotnet format tool for ADO build.
TravisEz13 pushed a commit to TravisEz13/PowerShell that referenced this pull request Feb 26, 2026
…Shell#26627)

1. Fix the conditions used in `release-MSIX-Publish.yml`
2. Update `build.psm1` to not install dotnet format tool for ADO build.
adityapatwardhan pushed a commit to adityapatwardhan/PowerShell that referenced this pull request Mar 9, 2026
…Shell#26627)

1. Fix the conditions used in `release-MSIX-Publish.yml`
2. Update `build.psm1` to not install dotnet format tool for ADO build.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Backport-7.4.x-Migrated Backport-7.5.x-Migrated BackPort-7.6.x-Done 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.

5 participants