87 lines
2.9 KiB
YAML
87 lines
2.9 KiB
YAML
|
jobs:
|
||
|
- job: Make_MSIX_Layout
|
||
|
displayName: Make MSIX layout
|
||
|
|
||
|
pool:
|
||
|
vmName: win2016-vs2017
|
||
|
|
||
|
workspace:
|
||
|
clean: all
|
||
|
|
||
|
strategy:
|
||
|
matrix:
|
||
|
#win32:
|
||
|
# Name: win32
|
||
|
# Python: $(Build.BinariesDirectory)\bin_$(Name)\python.exe
|
||
|
# PYTHONHOME: $(Build.SourcesDirectory)
|
||
|
amd64:
|
||
|
Name: amd64
|
||
|
Python: $(Build.BinariesDirectory)\bin_$(Name)\python.exe
|
||
|
PYTHONHOME: $(Build.SourcesDirectory)
|
||
|
|
||
|
steps:
|
||
|
- template: ./checkout.yml
|
||
|
|
||
|
- task: DownloadBuildArtifacts@0
|
||
|
displayName: 'Download artifact: bin_$(Name)'
|
||
|
inputs:
|
||
|
artifactName: bin_$(Name)
|
||
|
downloadPath: $(Build.BinariesDirectory)
|
||
|
|
||
|
- task: DownloadBuildArtifacts@0
|
||
|
displayName: 'Download artifact: bin_$(Name)_d'
|
||
|
inputs:
|
||
|
artifactName: bin_$(Name)_d
|
||
|
downloadPath: $(Build.BinariesDirectory)
|
||
|
|
||
|
- task: DownloadBuildArtifacts@0
|
||
|
displayName: 'Download artifact: tcltk_lib_$(Name)'
|
||
|
inputs:
|
||
|
artifactName: tcltk_lib_$(Name)
|
||
|
downloadPath: $(Build.BinariesDirectory)
|
||
|
|
||
|
- template: ./layout-command.yml
|
||
|
|
||
|
- powershell: |
|
||
|
Remove-Item "$(Build.ArtifactStagingDirectory)\appx-store" -Recurse -Force -EA 0
|
||
|
$(LayoutCmd) --copy "$(Build.ArtifactStagingDirectory)\appx-store" --preset-appx --precompile
|
||
|
displayName: 'Generate store APPX layout'
|
||
|
env:
|
||
|
TCL_LIBRARY: $(Build.BinariesDirectory)\tcltk_lib_$(Name)\tcl8
|
||
|
|
||
|
- task: PublishBuildArtifacts@1
|
||
|
displayName: 'Publish Artifact: layout_appxstore_$(Name)'
|
||
|
inputs:
|
||
|
PathtoPublish: '$(Build.ArtifactStagingDirectory)\appx-store'
|
||
|
ArtifactName: layout_appxstore_$(Name)
|
||
|
|
||
|
- task: DownloadBuildArtifacts@0
|
||
|
displayName: 'Download artifact: cert'
|
||
|
condition: and(succeeded(), variables['SigningCertificate'])
|
||
|
inputs:
|
||
|
artifactName: cert
|
||
|
downloadPath: $(Build.BinariesDirectory)
|
||
|
|
||
|
- powershell: |
|
||
|
$info = (gc "$(Build.BinariesDirectory)\cert\certinfo.json" | ConvertFrom-JSON)
|
||
|
Write-Host "Side-loadable APPX must be signed with '$($info.Subject)'"
|
||
|
Write-Host "##vso[task.setvariable variable=APPX_DATA_PUBLISHER]$($info.Subject)"
|
||
|
Write-Host "##vso[task.setvariable variable=APPX_DATA_SHA256]$($info.SHA256)"
|
||
|
displayName: 'Override signing parameters'
|
||
|
condition: and(succeeded(), variables['SigningCertificate'])
|
||
|
|
||
|
- powershell: |
|
||
|
Remove-Item "$(Build.ArtifactStagingDirectory)\appx" -Recurse -Force -EA 0
|
||
|
$(LayoutCmd) --copy "$(Build.ArtifactStagingDirectory)\appx" --preset-appx --precompile --include-symbols --include-tests
|
||
|
displayName: 'Generate sideloading APPX layout'
|
||
|
env:
|
||
|
TCL_LIBRARY: $(Build.BinariesDirectory)\tcltk_lib_$(Name)\tcl8
|
||
|
APPX_DATA_PUBLISHER: $(APPX_DATA_PUBLISHER)
|
||
|
APPX_DATA_SHA256: $(APPX_DATA_SHA256)
|
||
|
|
||
|
- task: PublishBuildArtifacts@1
|
||
|
displayName: 'Publish Artifact: layout_appx_$(Name)'
|
||
|
inputs:
|
||
|
PathtoPublish: '$(Build.ArtifactStagingDirectory)\appx'
|
||
|
ArtifactName: layout_appx_$(Name)
|