KEMBAR78
Add build to vPack Pipeline by jshigetomi · Pull Request #25915 · PowerShell/PowerShell · GitHub
Skip to content

Conversation

@jshigetomi
Copy link
Collaborator

@jshigetomi jshigetomi commented Aug 26, 2025

PR Summary

This pull request introduces significant improvements to the PowerShell build pipeline by making the build and signing process more flexible and robust. The main changes allow the pipeline to distinguish between official and non-official builds, dynamically select templates, and provide more granular handling of code signing. These updates make it easier to manage different build scenarios and improve the reliability and clarity of signing checks.

Pipeline configuration and template selection:

  • Added the OfficialBuild boolean parameter and vPackName parameter to .pipelines/PowerShell-vPack-Official.yml, enabling selection between official and non-official build templates and scenarios.
  • Dynamically set the pipeline template via the new templateFile variable, allowing the pipeline to choose between Microsoft.Official.yml and Microsoft.NonOfficial.yml based on the build type. [1] [2]

Build and artifact handling:

  • Refactored build steps to create a dedicated symbols folder per architecture, set the PowerShellRoot and Runtime variables, and improved output and artifact directory management for clarity and consistency. [1] [2] [3]

Code signing improvements:

  • Updated .pipelines/templates/obp-file-signing.yml and tools/packaging/packaging.psm1 to accept and propagate the OfficialBuild parameter, allowing signing logic to distinguish between official and non-official builds and adjust signature checks and warnings accordingly. [1] [2] [3] [4] [5] [6]
  • Made the signing profile configurable via the SigningProfile parameter, supporting different signing requirements for official and non-official builds.

These changes collectively improve the maintainability and reliability of the pipeline, especially around build type selection and code signing.

PR Context

PR Checklist

@jshigetomi jshigetomi requested a review from a team as a code owner August 26, 2025 01:46
@jshigetomi jshigetomi added CL-BuildPackaging Indicates that a PR should be marked as a build or packaging change in the Change Log BackPort-7.4.x-Consider BackPort-7.5.x-Consider labels Aug 26, 2025
Remove reference to packages pipeline

Use repoRoot

set architecture variable to string

set and use variable architecutre

Get the fullname of all artifacrts

Look in Symbols_Arch for all files

Initialize PowerShellRoot for signing template

Skip signature validation for now

revert signature validation

Look for tsa and credscan in pipeline.workspace

revert signature validation

Look for tsa and credscan in pipeline.workspace

turn off sig val

check for test cert sigining in pipeline and Update-PSSignedBuildFolder

Pass parameter to signing template

Use bool not string

cast to boolean

Add parameter to second call to method

look for credscan in pipeline.workspace

revert windows-hosted build change

Revert credscan

define artifactPlatform

Remove checkout

define artifactPlatform

Remove checkout

maintain checkout to only s

Add parameter for vPack name

Remove template

Add parameter names
@jshigetomi
Copy link
Collaborator Author

jshigetomi commented Aug 27, 2025

/azp run PowerShell-CI-linux-packaging, PowerShell-Windows-Packaging-CI

@PowerShell PowerShell deleted a comment from azure-pipelines bot Aug 27, 2025
@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@azure-pipelines
Copy link

Azure Pipelines successfully started running 2 pipeline(s).

jshigetomi and others added 13 commits August 27, 2025 16:32
Remove reference to packages pipeline

Use repoRoot

set architecture variable to string

set and use variable architecutre

Get the fullname of all artifacrts

Look in Symbols_Arch for all files

Initialize PowerShellRoot for signing template

Skip signature validation for now

revert signature validation

Look for tsa and credscan in pipeline.workspace

revert signature validation

Look for tsa and credscan in pipeline.workspace

turn off sig val

check for test cert sigining in pipeline and Update-PSSignedBuildFolder

Pass parameter to signing template

Use bool not string

cast to boolean

Add parameter to second call to method

look for credscan in pipeline.workspace

revert windows-hosted build change

Revert credscan

define artifactPlatform

Remove checkout

define artifactPlatform

Remove checkout

maintain checkout to only s

Add parameter for vPack name

Remove template

Add parameter names
…lBuild and debug, and adjust vPackName settings
@lrpaula411-art

This comment was marked as spam.

@lrpaula411-art
Copy link

Instalar

lrpaula411-art

This comment was marked as spam.

@jshigetomi
Copy link
Collaborator Author

/azp run PowerShell-CI-linux-packaging, PowerShell-Windows-Packaging-CI

@PowerShell PowerShell deleted a comment from azure-pipelines bot Sep 3, 2025
@azure-pipelines
Copy link

Azure Pipelines successfully started running 2 pipeline(s).

@TravisEz13 TravisEz13 merged commit 499cedf into master Sep 3, 2025
45 checks passed
@microsoft-github-policy-service
Copy link
Contributor

microsoft-github-policy-service bot commented Sep 3, 2025

📣 Hey @@jshigetomi, how did we do? We would love to hear your feedback with the link below! 🗣️

🔗 https://aka.ms/PSRepoFeedback

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-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.

4 participants