Skip to content

Produce min-size package for arm64 architecture#27646

Open
daxian-dbw wants to merge 4 commits into
PowerShell:masterfrom
daxian-dbw:min-size
Open

Produce min-size package for arm64 architecture#27646
daxian-dbw wants to merge 4 commits into
PowerShell:masterfrom
daxian-dbw:min-size

Conversation

@daxian-dbw

Copy link
Copy Markdown
Member

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.psm1 to replace the min-size type with min-size-x64 and min-size-arm64 types, and made corresponding changes in pipeline files to produce the min-size arm64 binaries and packages.

This PR also fixed 2 issues:

  1. In linux-package-build.yml, only build the package again with -LTS for deb and rpm packages.
  2. In 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

Copilot AI review requested due to automatic review settings July 1, 2026 22:06
@daxian-dbw daxian-dbw requested review from a team and jshigetomi as code owners July 1, 2026 22:06
@daxian-dbw daxian-dbw changed the title Min size Produce min-size package for arm64 architecture Jul 1, 2026
@daxian-dbw daxian-dbw added the CL-BuildPackaging Indicates that a PR should be marked as a build or packaging change in the Change Log label Jul 1, 2026

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.

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-size package type with min-size-x64 and min-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 -LTS deb/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.

Comment thread tools/packaging/packaging.psm1 Outdated
Comment thread tools/packaging/packaging.psm1
Comment thread .pipelines/templates/packaging/windows/package.yml
Comment thread .pipelines/templates/packaging/windows/package.yml Outdated
Comment thread .pipelines/templates/packaging/windows/package.yml
Comment thread .pipelines/templates/packaging/windows/package.yml

@daxian-dbw daxian-dbw left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

All comments addressed.

Comment thread tools/packaging/packaging.psm1
Comment thread tools/packaging/packaging.psm1 Outdated
Comment thread .pipelines/templates/packaging/windows/package.yml
Comment thread .pipelines/templates/packaging/windows/package.yml Outdated
Comment thread .pipelines/templates/packaging/windows/package.yml
Comment thread .pipelines/templates/packaging/windows/package.yml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Backport-7.4.x-Consider Backport-7.5.x-Consider Backport-7.6.x-Consider 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.

3 participants