62 lines
1.8 KiB
YAML
62 lines
1.8 KiB
YAML
parameters:
|
|
pool: 'Hosted VS2017'
|
|
parentJobs: []
|
|
purpose: ''
|
|
tagSet: 'CI'
|
|
|
|
jobs:
|
|
- job: win_test_${{ parameters.purpose }}_${{ parameters.tagSet }}
|
|
dependsOn:
|
|
${{ parameters.parentJobs }}
|
|
pool:
|
|
name: ${{ parameters.pool }}
|
|
|
|
displayName: Windows Test - ${{ parameters.purpose }} - ${{ parameters.tagSet }}
|
|
|
|
steps:
|
|
- pwsh: |
|
|
Get-ChildItem -Path env:
|
|
displayName: Capture Environment
|
|
condition: succeededOrFailed()
|
|
|
|
- task: DownloadBuildArtifacts@0
|
|
displayName: 'Download Build Artifacts'
|
|
inputs:
|
|
downloadType: specific
|
|
itemPattern: |
|
|
build/**/*
|
|
downloadPath: '$(System.ArtifactsDirectory)'
|
|
|
|
- pwsh: |
|
|
Get-ChildItem "$(System.ArtifactsDirectory)\*" -Recurse
|
|
displayName: 'Capture Artifacts Directory'
|
|
continueOnError: true
|
|
|
|
# must be run frow Windows PowerShell
|
|
- powershell: |
|
|
# Remove "Program Files\dotnet" from the env variable PATH, so old SDKs won't affect us.
|
|
Write-Host "Old Path:"
|
|
Write-Host $env:Path
|
|
|
|
$dotnetPath = Join-Path $env:SystemDrive 'Program Files\dotnet'
|
|
$paths = $env:Path -split ";" | Where-Object { -not $_.StartsWith($dotnetPath) }
|
|
$env:Path = $paths -join ";"
|
|
|
|
Write-Host "New Path:"
|
|
Write-Host $env:Path
|
|
|
|
# Bootstrap
|
|
Import-Module .\tools\ci.psm1
|
|
Invoke-CIInstall
|
|
displayName: Bootstrap
|
|
|
|
- pwsh: |
|
|
Import-Module .\tools\ci.psm1
|
|
Restore-PSOptions -PSOptionsPath '$(System.ArtifactsDirectory)\build\psoptions.json'
|
|
$options = (Get-PSOptions)
|
|
$path = split-path -path $options.Output
|
|
$rootPath = split-Path -path $path
|
|
Expand-Archive -Path '$(System.ArtifactsDirectory)\build\build.zip' -DestinationPath $rootPath -Force
|
|
Invoke-CITest -Purpose '${{ parameters.purpose }}' -TagSet '${{ parameters.tagSet }}'
|
|
displayName: Test
|
|
condition: succeeded()
|