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()