Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
70 changes: 37 additions & 33 deletions .pipelines/publish_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@ name: $(Date:yyyyMMdd).$(Rev:r)
parameters:
- name: notifyUsers
type: string
default: ''
default: $(notifyUsers)
- name: approversUsers
type: string
default: ''
default: $(approversUsers)
resources:
pipelines:
- pipeline: '_MSStoreCLI-BuildRelease'
- pipeline: 'MSStoreCLI-BuildRelease'
project: 'Pax'
source: 'MSStoreCLI\MSStore CLI - Release'
trigger:
Expand Down Expand Up @@ -52,89 +52,89 @@ extends:
isProduction: true
inputs:
- input: pipelineArtifact
pipeline: '_MSStoreCLI-BuildRelease'
pipeline: 'MSStoreCLI-BuildRelease'
artifactName: 'CLI-linux-x64'
targetPath: '$(Pipeline.Workspace)/CLI-linux-x64'
- input: pipelineArtifact
pipeline: '_MSStoreCLI-BuildRelease'
pipeline: 'MSStoreCLI-BuildRelease'
artifactName: 'CLI-linux-arm64'
targetPath: '$(Pipeline.Workspace)/CLI-linux-arm64'
- input: pipelineArtifact
pipeline: '_MSStoreCLI-BuildRelease'
pipeline: 'MSStoreCLI-BuildRelease'
artifactName: 'MSIX-arm64'
targetPath: '$(Pipeline.Workspace)/MSIX-arm64'
- input: pipelineArtifact
pipeline: '_MSStoreCLI-BuildRelease'
pipeline: 'MSStoreCLI-BuildRelease'
artifactName: 'MSIX-x64'
targetPath: '$(Pipeline.Workspace)/MSIX-x64'
- input: pipelineArtifact
pipeline: '_MSStoreCLI-BuildRelease'
pipeline: 'MSStoreCLI-BuildRelease'
artifactName: 'CLI-win-arm64'
targetPath: '$(Pipeline.Workspace)/CLI-win-arm64'
- input: pipelineArtifact
pipeline: '_MSStoreCLI-BuildRelease'
pipeline: 'MSStoreCLI-BuildRelease'
artifactName: 'CLI-win-x64'
targetPath: '$(Pipeline.Workspace)/CLI-win-x64'
- input: pipelineArtifact
pipeline: '_MSStoreCLI-BuildRelease'
pipeline: 'MSStoreCLI-BuildRelease'
artifactName: 'CLI-osx-x64'
targetPath: '$(Pipeline.Workspace)/CLI-osx-x64'
- input: pipelineArtifact
pipeline: '_MSStoreCLI-BuildRelease'
pipeline: 'MSStoreCLI-BuildRelease'
artifactName: 'CLI-osx-arm64'
targetPath: '$(Pipeline.Workspace)/CLI-osx-arm64'
steps:
- task: ArchiveFiles@2
displayName: Archive Windows x64
inputs:
rootFolderOrFile: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/CLI-win-x64
rootFolderOrFile: $(Pipeline.Workspace)/CLI-win-x64
includeRootFolder: false
archiveFile: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/MSStoreCLI-win-x64.zip
archiveFile: $(Pipeline.Workspace)/MSStoreCLI-win-x64.zip
- task: ArchiveFiles@2
displayName: Archive Windows arm64
inputs:
rootFolderOrFile: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/CLI-win-arm64
rootFolderOrFile: $(Pipeline.Workspace)/CLI-win-arm64
includeRootFolder: false
archiveFile: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/MSStoreCLI-win-arm64.zip
archiveFile: $(Pipeline.Workspace)/MSStoreCLI-win-arm64.zip
- task: ArchiveFiles@2
displayName: Archive Linux x64
inputs:
rootFolderOrFile: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/CLI-linux-x64
rootFolderOrFile: $(Pipeline.Workspace)/CLI-linux-x64
includeRootFolder: false
archiveType: tar
archiveFile: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/MSStoreCLI-linux-x64.tar.gz
archiveFile: $(Pipeline.Workspace)/MSStoreCLI-linux-x64.tar.gz
- task: ArchiveFiles@2
displayName: Archive Linux arm64
inputs:
rootFolderOrFile: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/CLI-linux-arm64
rootFolderOrFile: $(Pipeline.Workspace)/CLI-linux-arm64
includeRootFolder: false
archiveType: tar
archiveFile: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/MSStoreCLI-linux-arm64.tar.gz
archiveFile: $(Pipeline.Workspace)/MSStoreCLI-linux-arm64.tar.gz
- task: ArchiveFiles@2
displayName: Archive MacOS x64
inputs:
rootFolderOrFile: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/CLI-osx-x64
rootFolderOrFile: $(Pipeline.Workspace)/CLI-osx-x64
includeRootFolder: false
archiveType: tar
archiveFile: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/MSStoreCLI-osx-x64.tar.gz
archiveFile: $(Pipeline.Workspace)/MSStoreCLI-osx-x64.tar.gz
- task: ArchiveFiles@2
displayName: Archive MacOS arm64
inputs:
rootFolderOrFile: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/CLI-osx-arm64
rootFolderOrFile: $(Pipeline.Workspace)/CLI-osx-arm64
includeRootFolder: false
archiveType: tar
archiveFile: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/MSStoreCLI-osx-arm64.tar.gz
archiveFile: $(Pipeline.Workspace)/MSStoreCLI-osx-arm64.tar.gz
- task: PowerShell@2
displayName: Create Hashfiles
inputs:
targetType: inline
script: |-
foreach($file in Get-FileHash -Path "$(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/*.tar.gz" -Algorithm SHA256) {
foreach($file in Get-FileHash -Path "$(Pipeline.Workspace)/*.tar.gz" -Algorithm SHA256) {
$content = $file.Hash.ToLower() + " " + [System.IO.Path]::GetFileName($file.Path)
$path = $file.Path + ".sha256.txt"
$content | Out-File $path
}
foreach($file in Get-FileHash -Path "$(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/*.zip" -Algorithm SHA256) {
foreach($file in Get-FileHash -Path "$(Pipeline.Workspace)/*.zip" -Algorithm SHA256) {
$content = $file.Hash.ToLower() + " " + [System.IO.Path]::GetFileName($file.Path)
$path = $file.Path + ".sha256.txt"
$content | Out-File $path
Expand All @@ -149,9 +149,9 @@ extends:
title: Microsoft Store CLI $(Build.SourceBranchName)
releaseNotesSource: inline
assets: |-
$(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/**/*.tar.gz
$(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/**/*.zip
$(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/**/*.sha256.txt
$(Pipeline.Workspace)/**/*.tar.gz
$(Pipeline.Workspace)/**/*.zip
$(Pipeline.Workspace)/**/*.sha256.txt
isDraft: true
isPreRelease: true
changeLogCompareToRelease: lastNonDraftRelease
Expand All @@ -160,7 +160,7 @@ extends:
inputs:
serviceEndpoint: MSStoreCLI - StoreBroker
appId: 9P53PC5S0PHJ
sourceFolder: $(System.DefaultWorkingDirectory)/_MSStore CLI - Build Release/
sourceFolder: $(Pipeline.Workspace)/
contents: |-
MSIX-x64/*_x64.msix
MSIX-arm64/*_arm64.msix
Expand All @@ -175,7 +175,7 @@ extends:
dependsOn: GitHub_Release_And_MSStore
variables:
- name: GitHubPAT
value:
value: $(GitHubPAT)
jobs:
- job: PreDeploymentApprovalJob
displayName: Pre-Deployment Approval
Expand All @@ -196,7 +196,7 @@ extends:
- task: CmdLine@2
displayName: Checkout HomeBrew Repo
inputs:
script: git clone https://oauth2:$(GitHubPAT)@github.com/microsoft/homebrew-msstore-cli.git .
script: git clone https://oauth2:$(GitHubPAT)@github.com/microsoft/homebrew-msstore-cli.git $(Pipeline.Workspace)\homebrew-msstore-cli
- task: DownloadGitHubRelease@0
displayName: Download GitHub Release
inputs:
Expand All @@ -205,17 +205,21 @@ extends:
defaultVersionType: specificTag
version: $(Build.SourceBranchName)
itemPattern: '*.sha256.txt'
downloadPath: $(Pipeline.Workspace)\homebrew-msstore-cli
- task: PowerShell@2
displayName: Update Ruby file
inputs:
filePath: update-formula.ps1
filePath: $(Pipeline.Workspace)\homebrew-msstore-cli\update-formula.ps1
arguments: $(Build.SourceBranchName)
workingDirectory: $(Pipeline.Workspace)\homebrew-msstore-cli
- task: CmdLine@2
displayName: Git operations
inputs:
workingDirectory: $(Pipeline.Workspace)\homebrew-msstore-cli
script: |-
git config user.email "msstore.cli.dev.bot@microsoft.com"
git config user.name "MSStore CLI Dev Bot"
git add -f Formula\msstore-cli.rb
git checkout -B $(Build.SourceBranchName)
git commit -m "Update formula with new release ($(Build.SourceBranchName))."
git push origin main
git push origin $(Build.SourceBranchName)
Loading