[release/v7.6] Fix condition syntax for StoreBroker package tasks in MSIX pipeline#26561
Conversation
There was a problem hiding this comment.
Pull request overview
This PR backports a fix from the main branch (#26427) to the release/v7.6 branch, addressing OneBranch pipeline condition syntax and adding comprehensive instruction documentation for future reference. The changes ensure the MSIX StoreBroker packaging pipeline correctly uses dynamic service endpoint configuration that adapts to different release channels (LTS, Stable, Preview).
Key changes:
- Replaces hardcoded service endpoint with dynamic variable reference in MSIX pipeline
- Adds comprehensive instruction documentation for OneBranch condition syntax patterns
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
.pipelines/templates/package-create-msix.yml |
Updates StoreBroker task to use $(ServiceConnection) variable instead of hardcoded 'StoreAppPublish-Private', enabling dynamic channel-based endpoint selection |
.github/instructions/onebranch-condition-syntax.instructions.md |
Adds new instruction file documenting proper Azure Pipelines condition syntax patterns, including variable references, parameter handling, and common mistakes |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| @@ -0,0 +1,223 @@ | |||
| --- | |||
| applyTo: ".pipelines/**/*.{yml,yaml}" | |||
There was a problem hiding this comment.
The applyTo field should use array format for consistency with the instruction file format guide. According to the guideline, multiple file patterns should be specified as separate array items rather than using brace expansion.
Suggested format:
---
applyTo:
- ".pipelines/**/*.yml"
- ".pipelines/**/*.yaml"
---This format is more explicit and follows the documented convention shown in other instruction files like log-grouping-guidelines.instructions.md.
Backport of #26427 to release/v7.6
Triggered by @adityapatwardhan on behalf of @TravisEz13
Original CL Label: CL-BuildPackaging
/cc @PowerShell/powershell-maintainers
Impact
REQUIRED: Choose either Tooling Impact or Customer Impact (or both). At least one checkbox must be selected.
Tooling Impact
This backports a fix for OneBranch pipeline condition syntax in the MSIX StoreBroker packaging pipeline. The original change ensures conditional expressions follow the correct OneBranch format, though the release branch already uses a more sophisticated dynamic channel selection approach.
Customer Impact
Regression
REQUIRED: Check exactly one box.
This is not a regression.
Testing
The fix addresses pipeline condition syntax to ensure proper OneBranch compatibility. The cherry-pick was successfully applied with conflict resolution that preserves the release branch's enhanced channel selection logic while incorporating the new instruction documentation.
Risk
REQUIRED: Check exactly one box.
This is a build pipeline infrastructure change that adds documentation and was adapted to work with the existing sophisticated channel selection in the release branch. The changes only affect the MSIX packaging pipeline and preserve all existing functionality.
Merge Conflicts
Resolved conflict in .pipelines/templates/package-create-msix.yml where the main branch had split StoreBroker tasks into separate Preview/Stable tasks, but the release branch uses dynamic channel selection. Kept the release branch's more sophisticated approach while adding the new instruction documentation.