Skip to content

[release/v7.6.2] Create PowerShell package for arm debian distribution#27433

Merged
daxian-dbw merged 1 commit into
PowerShell:release/v7.6.2from
daxian-dbw:backport/release/v7.6.2/26925-ddff03a50
May 13, 2026
Merged

[release/v7.6.2] Create PowerShell package for arm debian distribution#27433
daxian-dbw merged 1 commit into
PowerShell:release/v7.6.2from
daxian-dbw:backport/release/v7.6.2/26925-ddff03a50

Conversation

@daxian-dbw
Copy link
Copy Markdown
Member

Backport of #26925 to release/v7.6.2

Triggered by @daxian-dbw on behalf of @anamnavi

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

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

Adds arm64 Debian package build support to the packaging pipeline, including a new deb-arm64 package type, updated pipeline stages, and package name validation regex updates.

Customer Impact

  • Customer reported
  • Found internally

Regression

REQUIRED: Check exactly one box.

  • Yes
  • No

This is not a regression.

Testing

Verified via the original PR. Regression test validates that the pwsh binary inside arm64 Debian packages has executable permissions. Package name validation regex updated to accept arm64 suffix.

Risk

REQUIRED: Check exactly one box.

  • High
  • Medium
  • Low

Adds a new deb-arm64 package type to the build pipeline. Existing package types are untouched, but the change touches core packaging logic and pipeline templates.

Merge Conflicts

Conflict in tools/packaging/packaging.psm1 ValidateSet — release branch additionally contains msi type not present in master. Resolved by keeping both deb-arm64 (from the PR) and msi (from the release branch).

Copilot AI review requested due to automatic review settings May 13, 2026 20:32
@daxian-dbw daxian-dbw requested review from a team and jshigetomi as code owners May 13, 2026 20:32
@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 May 13, 2026
Copy link
Copy Markdown
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

Backport that adds Debian arm64 packaging support to the release/v7.6.2 packaging pipeline by introducing a new deb-arm64 package type, wiring it into pipeline stages, and updating package-name validation to accept arm64 DEB artifacts.

Changes:

  • Add deb-arm64 as a supported Start-PSPackage type and route it through Debian packaging with HostArchitecture = arm64.
  • Add a new Linux packaging job/stage entry for deb-arm64 and map it to the correct signed artifact folder.
  • Update DEB package-name validation to allow arm64 and adjust tests/documentation examples accordingly.

Reviewed changes

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

Show a summary per file
File Description
tools/packaging/packaging.psm1 Adds deb-arm64 package type handling that invokes Debian packaging with HostArchitecture=arm64.
test/packaging/linux/package-validation.tests.ps1 Updates DEB name-validation test examples/patterns to allow arm64.
.pipelines/templates/stages/PowerShell-Packages-Stages.yml Adds a deb-arm64 Linux packaging job using the existing arm64 drops.
.pipelines/templates/release-validate-packagenames.yml Updates DEB regex to accept arm64 in release package-name validation.
.pipelines/templates/linux-package-build.yml Adds deb-arm64 mapping to the appropriate signed artifact folder and DEB filter.

$message = @()
Get-ChildItem $(System.ArtifactsDirectory)\* -recurse -filter *.deb | ForEach-Object {
if($_.Name -notmatch 'powershell(-preview|-lts)?_\d+\.\d+\.\d+([\-~][a-z]*.\d+)?-\d\.deb_amd64\.deb')
if($_.Name -notmatch 'powershell(-preview|-lts)?_\d+\.\d+\.\d+([\-~][a-z]*.\d+)?-\d\.deb_(amd64|arm64)\.deb')
Comment on lines +644 to +661
'deb-arm64' {
$Arguments = @{
Type = 'deb'
PackageSourcePath = $Source
Name = $Name
Version = $Version
Force = $Force
NoSudo = $NoSudo
LTS = $LTS
HostArchitecture = "arm64"
}
foreach ($Distro in $Script:DebianDistributions) {
$Arguments["Distribution"] = $Distro
if ($PSCmdlet.ShouldProcess("Create DEB Package for $Distro")) {
New-UnixPackage @Arguments
}
}
}
@daxian-dbw daxian-dbw merged commit 901bf01 into PowerShell:release/v7.6.2 May 13, 2026
42 checks passed
@daxian-dbw daxian-dbw deleted the backport/release/v7.6.2/26925-ddff03a50 branch May 13, 2026 21:57
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