perf-job.yml 3.2 KB
Newer Older
1 2 3 4
parameters:
  buildConfig: ''
  archType: ''
  osGroup: ''
5
  osSubgroup: ''
6 7
  container: ''
  framework: netcoreapp5.0 # Specify the appropriate framework when running release branches (ie netcoreapp3.0 for release/3.0)
8
  liveLibrariesBuildConfig: ''
9
  variables: {}
10
  pool: ''
11 12 13 14 15 16 17

### Perf job

### Each perf job depends on a corresponding build job with the same
### buildConfig and archType.

jobs:
18
- template: run-performance-job.yml
19 20
  parameters:
    # Compute job name from template parameters
21 22
    jobName: ${{ format('perfbuild_{0}{1}_{2}_{3}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig) }}
    displayName: ${{ format('Performance {0}{1} {2} {3}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig) }}
23
    pool: ${{ parameters.pool }}
24 25
    buildConfig: ${{ parameters.buildConfig }}
    archType: ${{ parameters.archType }}
26
    osGroup: ${{ parameters.osGroup }}
27
    osSubgroup: ${{ parameters.osSubgroup }}
28
    liveLibrariesBuildConfig: ${{ parameters.lieLibrariesBuildConfig }}
29
    # Test job depends on the corresponding build job
30 31 32 33
    dependsOn:
    - ${{ format('coreclr_product_build_{0}{1}_{2}_{3}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig) }}
    - ${{ if ne(parameters.liveLibrariesBuildConfig, '') }}:
      - ${{ format('libraries_build_{0}_{1}{2}_{3}_{4}', 'netcoreapp', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.liveLibrariesBuildConfig) }}
34

35
    ${{ if eq(parameters.osGroup, 'Windows_NT') }}:
J
jashook 已提交
36
      extraSetupParameters: -CoreRootDirectory $(Build.SourcesDirectory)\artifacts\tests\coreclr\${{ parameters.osGroup }}.${{ parameters.archType }}.Release\Tests\Core_Root -Architecture ${{ parameters.archType }}
37
    ${{ if ne(parameters.osGroup, 'Windows_NT') }}:
J
jashook 已提交
38
      extraSetupParameters: --corerootdirectory $(Build.SourcesDirectory)/artifacts/tests/coreclr/${{ parameters.osGroup }}.${{ parameters.archType }}.Release/Tests/Core_Root --architecture ${{ parameters.archType }}
39 40
    
    variables: ${{ parameters.variables }}
41

42 43
    frameworks:
      - ${{ parameters.framework }}
44 45 46
    steps:
    # Extra steps that will be passed to the performance template and run before sending the job to helix (all of which is done in the template)

47

48 49 50 51 52 53 54 55 56 57 58
    # Optionally download live-built libraries
    - ${{ if ne(parameters.liveLibrariesBuildConfig, '') }}:
      - template: /eng/pipelines/common/download-artifact-step.yml
        parameters:
          unpackFolder: $(librariesDownloadDir)
          cleanUnpackFolder: false
          artifactFileName: '$(librariesBuildArtifactName)$(archiveExtension)'
          artifactName: '$(librariesBuildArtifactName)'
          displayName: 'live-built libraries'


59
    # Download product binaries directory
60
    - template: /eng/pipelines/common/download-artifact-step.yml
61 62 63 64 65 66
      parameters:
        unpackFolder: $(buildProductRootFolderPath)
        artifactFileName: '$(buildProductArtifactName)$(archiveExtension)'
        artifactName: '$(buildProductArtifactName)'
        displayName: 'product build'

67 68

    # Create Core_Root
69 70
    - script: $(coreClrRepoRootDir)build-test$(scriptExt) $(buildConfig) $(archType) generatelayoutonly $(librariesOverrideArg)
      displayName: Create Core_Root