Welcome to mirror list, hosted at ThFree Co, Russian Federation.

source-index-stage1.yml « job « templates « common « eng - github.com/dotnet/llvm-project.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 21fd12276b658078a891929c2fc9028b80548309 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
parameters:
  runAsPublic: false
  sourceIndexPackageVersion: 1.0.1-20220804.1
  sourceIndexPackageSource: https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json
  sourceIndexBuildCommand: powershell -NoLogo -NoProfile -ExecutionPolicy Bypass -Command "eng/common/build.ps1 -restore -build -binarylog -ci"
  preSteps: []
  binlogPath: artifacts/log/Debug/Build.binlog
  condition: ''
  dependsOn: ''
  pool: ''

jobs:
- job: SourceIndexStage1
  dependsOn: ${{ parameters.dependsOn }}
  condition: ${{ parameters.condition }}
  variables:
  - name: SourceIndexPackageVersion
    value: ${{ parameters.sourceIndexPackageVersion }}
  - name: SourceIndexPackageSource
    value: ${{ parameters.sourceIndexPackageSource }}
  - name: BinlogPath
    value: ${{ parameters.binlogPath }}
  - ${{ if and(eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
    - group: source-dot-net stage1 variables

  ${{ if ne(parameters.pool, '') }}:
    pool: ${{ parameters.pool }}
  ${{ if eq(parameters.pool, '') }}:
    pool:
      ${{ if eq(variables['System.TeamProject'], 'public') }}:
        name: NetCore-Public
        demands: ImageOverride -equals windows.vs2019.amd64.open
      ${{ if eq(variables['System.TeamProject'], 'internal') }}:
        name: NetCore1ESPool-Internal
        demands: ImageOverride -equals windows.vs2019.amd64

  steps:
  - ${{ each preStep in parameters.preSteps }}:
    - ${{ preStep }}

  - task: UseDotNet@2
    displayName: Use .NET Core sdk 3.1
    inputs:
      packageType: sdk
      version: 3.1.x
      installationPath: $(Agent.TempDirectory)/dotnet
      workingDirectory: $(Agent.TempDirectory)

  - script: |
      $(Agent.TempDirectory)/dotnet/dotnet tool install BinLogToSln --version $(SourceIndexPackageVersion) --add-source $(SourceIndexPackageSource) --tool-path $(Agent.TempDirectory)/.source-index/tools
      $(Agent.TempDirectory)/dotnet/dotnet tool install UploadIndexStage1 --version $(SourceIndexPackageVersion) --add-source $(SourceIndexPackageSource) --tool-path $(Agent.TempDirectory)/.source-index/tools
    displayName: Download Tools
    # Set working directory to temp directory so 'dotnet' doesn't try to use global.json and use the repo's sdk.
    workingDirectory: $(Agent.TempDirectory)

  - script: ${{ parameters.sourceIndexBuildCommand }}
    displayName: Build Repository

  - script: $(Agent.TempDirectory)/.source-index/tools/BinLogToSln -i $(BinlogPath) -r $(Build.SourcesDirectory) -n $(Build.Repository.Name) -o .source-index/stage1output
    displayName: Process Binlog into indexable sln

  - ${{ if and(eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
    - script: $(Agent.TempDirectory)/.source-index/tools/UploadIndexStage1 -i .source-index/stage1output -n $(Build.Repository.Name)
      displayName: Upload stage1 artifacts to source index
      env:
        BLOB_CONTAINER_URL: $(source-dot-net-stage1-blob-container-url)