111 lines
4.0 KiB
YAML
111 lines
4.0 KiB
YAML
# This template contains a job which builds artifacts needed to release the app to the store and to
|
|
# Windows using Microsoft-internal systems. It relies Microsoft-internal resources and will not
|
|
# work outside of Microsoft.
|
|
# Specifically, this job:
|
|
# - Signs the bundle using a secure system. If you want to build your own, use SignTool following
|
|
# the example in the continuous integration pipeline.
|
|
# - Builds VPacks for including the app in the Windows OS build. Azure DevOps Universal Packages
|
|
# offers similar capabilities.
|
|
# - Creates StoreBroker packages containing Microsoft Store assets. Although the Store assets for
|
|
# this app are not open source, the StoreBroker tool is available at
|
|
# https://github.com/Microsoft/StoreBroker.
|
|
|
|
jobs:
|
|
- job: WindowsInternalRelease
|
|
dependsOn: Package
|
|
pool:
|
|
name: Package ES Custom Demands Lab A
|
|
demands:
|
|
- ClientAlias -equals PKGESUTILAPPS
|
|
workspace:
|
|
clean: outputs
|
|
steps:
|
|
- checkout: self
|
|
clean: true
|
|
|
|
# This must be the first task in the job definition, since it modifies the build environment
|
|
# in ways other tasks would not expect (for example, it clears the artifacts directory).
|
|
- task: PkgESSetupBuild@10
|
|
displayName: Initialize Package ES
|
|
inputs:
|
|
productName: Calculator
|
|
disableWorkspace: true
|
|
env:
|
|
XES_DISABLEPROV: true
|
|
|
|
- task: DownloadBuildArtifacts@0
|
|
displayName: Download appxBundle artifact
|
|
inputs:
|
|
artifactName: appxBundle
|
|
|
|
- task: PkgESCodeSign@10
|
|
displayName: Send bundle to Package ES code signing service
|
|
inputs:
|
|
signConfigXml: build\config\SignConfig.xml
|
|
inPathRoot: $(Build.ArtifactStagingDirectory)\appxBundle
|
|
outPathRoot: $(Build.ArtifactStagingDirectory)\appxBundleSigned
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
displayName: Publish AppxBundleSigned artifact
|
|
inputs:
|
|
pathtoPublish: $(Build.ArtifactStagingDirectory)\appxBundleSigned
|
|
artifactName: AppxBundleSigned
|
|
|
|
- task: CopyFiles@2
|
|
displayName: Copy signed AppxBundle to vpack staging folder
|
|
inputs:
|
|
sourceFolder: $(Build.ArtifactStagingDirectory)\appxBundleSigned
|
|
targetFolder: $(Build.ArtifactStagingDirectory)\vpack\appxBundle
|
|
|
|
- task: PkgESVPack@10
|
|
displayName: Create and push vpack for app
|
|
env:
|
|
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
|
|
inputs:
|
|
sourceDirectory: $(Build.ArtifactStagingDirectory)\vpack\appxBundle
|
|
description: VPack for the Calculator Application
|
|
pushPkgName: calculator.app
|
|
version: $(versionMajor).$(versionMinor).$(versionBuild)
|
|
owner: paxeeapps
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
displayName: Publish vpack\app artifact with vpack manifest
|
|
inputs:
|
|
pathtoPublish: $(XES_VPACKMANIFESTDIRECTORY)\$(XES_VPACKMANIFESTNAME)
|
|
artifactName: vpack\app
|
|
|
|
# TODO (macool): create and push internal test packages and test config
|
|
|
|
- task: UniversalPackages@0
|
|
displayName: Download internals package
|
|
inputs:
|
|
command: download
|
|
downloadDirectory: $(Build.SourcesDirectory)
|
|
vstsFeed: WindowsApps
|
|
vstsFeedPackage: calculator-internals
|
|
vstsPackageVersion: 0.0.7
|
|
|
|
- task: PkgESStoreBrokerPackage@10
|
|
displayName: Create StoreBroker Packages
|
|
env:
|
|
XES_SERIALPOSTBUILDREADY: True
|
|
inputs:
|
|
addToFlight: false
|
|
configPath: tools/Build/StoreBroker/SBCalculatorConfig.json
|
|
PDPRootPath: $(Build.SourcesDirectory)\PDP
|
|
imagesRootPath: $(Build.SourcesDirectory)\PDPMediaRoot
|
|
appxPath: $(Build.ArtifactStagingDirectory)\appxBundleSigned\Microsoft.WindowsCalculator_8wekyb3d8bbwe.appxbundle
|
|
useArtifactServiceForMedia: true
|
|
outPath: $(Build.ArtifactStagingDirectory)\StoreBrokerPayload
|
|
paToken: $(System.AccessToken)
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
displayName: Publish StoreBrokerPayload artifact
|
|
inputs:
|
|
artifactName: storeBrokerPayload
|
|
pathToPublish: $(Build.ArtifactStagingDirectory)/StoreBrokerPayload
|
|
|
|
- task: PkgESLateTasks@10
|
|
displayName: Run PackageES LateTasks
|
|
env:
|
|
XES_DISABLEPROV: true |