mirror of
https://github.com/microsoft/terminal.git
synced 2025-12-19 18:11:39 -05:00
Using our own pools like this gives us a lot of freedom in the tooling that's installed, the OS versions it targets, and when we take on Visual Studio updates. As part of this effort, I've also stood up a "small" agent pool. At the time of this PR, that pool is using D2ads-v5 SKU VMs (2 vcore 8 GiB) versus the "large" agent pool's D8as-v5 (8 vcore 32 GiB). Smaller build tasks have been moved over to the small pool. Compilation's the hard part, so it gets to stay on the large pool.
56 lines
2.0 KiB
YAML
56 lines
2.0 KiB
YAML
parameters:
|
|
configuration: 'Release'
|
|
platform: ''
|
|
additionalBuildArguments: ''
|
|
minimumExpectedTestsExecutedCount: 1 # Sanity check for minimum expected tests to be reported
|
|
rerunPassesRequiredToAvoidFailure: 5
|
|
|
|
jobs:
|
|
- job: Build${{ parameters.platform }}${{ parameters.configuration }}
|
|
displayName: Build ${{ parameters.platform }} ${{ parameters.configuration }}
|
|
variables:
|
|
BuildConfiguration: ${{ parameters.configuration }}
|
|
BuildPlatform: ${{ parameters.platform }}
|
|
PGOBuildMode: 'Instrument'
|
|
pool:
|
|
${{ if eq(variables['System.CollectionUri'], 'https://dev.azure.com/ms/') }}:
|
|
name: SHINE-OSS-L
|
|
${{ if ne(variables['System.CollectionUri'], 'https://dev.azure.com/ms/') }}:
|
|
name: SHINE-INT-L
|
|
demands: ImageOverride -equals SHINE-VS17-Latest
|
|
|
|
steps:
|
|
- template: build-console-steps.yml
|
|
parameters:
|
|
additionalBuildArguments: '${{ parameters.additionalBuildArguments }}'
|
|
|
|
- template: helix-runtests-job.yml
|
|
parameters:
|
|
name: 'RunTestsInHelix'
|
|
dependsOn: Build${{ parameters.platform }}${{ parameters.configuration }}
|
|
condition: succeeded()
|
|
testSuite: 'PgoInstrumentationSuite'
|
|
taefQuery: '@IsPgo=true'
|
|
configuration: ${{ parameters.configuration }}
|
|
platform: ${{ parameters.platform }}
|
|
rerunPassesRequiredToAvoidFailure: ${{ parameters.rerunPassesRequiredToAvoidFailure }}
|
|
|
|
- template: helix-processtestresults-job.yml
|
|
parameters:
|
|
name: 'ProcessTestResults'
|
|
pgoArtifact: 'PGO'
|
|
dependsOn:
|
|
- RunTestsInHelix
|
|
condition: succeededOrFailed()
|
|
rerunPassesRequiredToAvoidFailure: ${{ parameters.rerunPassesRequiredToAvoidFailure }}
|
|
minimumExpectedTestsExecutedCount: ${{ parameters.minimumExpectedTestsExecutedCount }}
|
|
|
|
- template: pgo-merge-pgd-job.yml
|
|
parameters:
|
|
name: 'MergePGD'
|
|
dependsOn:
|
|
- ProcessTestResults
|
|
pgoArtifact: 'PGO'
|
|
platform: ${{ parameters.platform }}
|
|
configuration: ${{ parameters.configuration }}
|