Produce min-size package for arm64 architecture#27646
Open
daxian-dbw wants to merge 4 commits into
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Updates the packaging/build pipeline to produce “min-size” packages for arm64 in addition to x64, by splitting the single min-size package type into architecture-specific types and wiring corresponding build/package/upload stages.
Changes:
- Replace
min-sizepackage type withmin-size-x64andmin-size-arm64, and update packaging logic to handle both. - Expand coordinated build + packaging stages to build/sign/package min-size artifacts for Linux arm64 and Windows arm64.
- Fix pipeline issues: only rebuild
-LTSdeb/rpm packages, and download the Linux arm64 deb in the Azure upload template.
Reviewed changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| tools/packaging/packaging.psm1 | Adds min-size-x64 / min-size-arm64 support, updates runtime selection and packaging switch logic, and removes obsolete AzDevOps helper functions. |
| tools/packaging/packaging.psd1 | Stops exporting removed AzDevOps helper functions. |
| build.psm1 | Extends minimal-size build runtime validation to include arm64 and updates a dotnet run invocation to use --. |
| .pipelines/templates/uploadToAzure.yml | Downloads additional artifacts (arm64 deb; split minSize x64 vs arm64 package artifacts). |
| .pipelines/templates/stages/PowerShell-Packages-Stages.yml | Adds packaging/signing for Windows arm64 min-size and Linux arm64 min-size; renames Linux min-size package job/type identifiers. |
| .pipelines/templates/stages/PowerShell-Coordinated_Packages-Stages.yml | Adds Linux arm64 minSize build and Windows arm64 minSize build to the coordinated build stage set. |
| .pipelines/templates/packaging/windows/sign.yml | Maps new min-size runtimes to the new min-size-* package types and updates package-type checks. |
| .pipelines/templates/packaging/windows/package.yml | Updates artifact download and package-type selection logic to support the new min-size runtimes/types. |
| .pipelines/templates/linux-package-build.yml | Adds min-size-x64/min-size-arm64 support and limits LTS rebuilds to deb/rpm packages only. |
kilasuit
reviewed
Jul 1, 2026
kilasuit
reviewed
Jul 1, 2026
daxian-dbw
commented
Jul 2, 2026
daxian-dbw
left a comment
Member
Author
There was a problem hiding this comment.
All comments addressed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR Summary
Today, we only produce min-size package for x64 architecture.
Per the ask from an internal team, this PR updates the build to produce min-size package for the arm64 architecture.
This PR updated the
packaging.psm1to replace themin-sizetype withmin-size-x64andmin-size-arm64types, and made corresponding changes in pipeline files to produce the min-size arm64 binaries and packages.This PR also fixed 2 issues:
linux-package-build.yml, only build the package again with-LTSfor deb and rpm packages.uploadToAzure.yml, also download the arm64 deb package so it can be uploaded too. Today (as of v7.6.3 release), the arm64 deb package is not uploaded to GitHub release page because it's never downloaded.PR Checklist
.h,.cpp,.cs,.ps1and.psm1files have the correct copyright header