summaryrefslogtreecommitdiff
path: root/eng/common/templates/post-build/channels/public-dev-release.yml
blob: c61eaa927d95d25cadfe094f172469dd128fa33a (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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
parameters:
  enableSymbolValidation: true

stages:
- stage: Publish
  dependsOn: validate
  variables:
    - template: ../common-variables.yml
  displayName: Developer Channel
  jobs:
  - template: ../setup-maestro-vars.yml

  - job:
    displayName: Symbol Publishing
    dependsOn: setupMaestroVars
    condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], variables.PublicDevRelease_30_Channel_Id)
    variables:
      - group: DotNet-Symbol-Server-Pats
    pool:
      vmImage: 'windows-2019'
    steps:
      - task: DownloadBuildArtifacts@0
        displayName: Download PDB Artifacts
        inputs:
          buildType: current
          artifactName: PDBArtifacts
        continueOnError: true

      - task: DownloadBuildArtifacts@0
        displayName: Download Blob Artifacts
        inputs:
          buildType: current
          artifactName: BlobArtifacts

      - task: PowerShell@2
        displayName: Publish
        inputs:
          filePath: eng\common\sdk-task.ps1
          arguments: -task PublishToSymbolServers -restore -msbuildEngine dotnet
            /p:DotNetSymbolServerTokenMsdl=$(microsoft-symbol-server-pat) 
            /p:DotNetSymbolServerTokenSymWeb=$(symweb-symbol-server-pat) 
            /p:PDBArtifactsDirectory='$(Build.ArtifactStagingDirectory)/PDBArtifacts/'
            /p:BlobBasePath='$(Build.ArtifactStagingDirectory)/BlobArtifacts/'
            /p:Configuration=Release

  - job:
    displayName: Publish to Static Feed
    dependsOn: setupMaestroVars
    variables:
      - group: DotNet-Blob-Feed
      - group: Publish-Build-Assets
      - name: BARBuildId
        value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
    condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], variables.PublicDevRelease_30_Channel_Id)
    pool:
      vmImage: 'windows-2019'
    steps:
      - task: DownloadBuildArtifacts@0
        displayName: Download Package Artifacts
        inputs:
          buildType: current
          artifactName: PackageArtifacts

      - task: DownloadBuildArtifacts@0
        displayName: Download Blob Artifacts
        inputs:
          buildType: current
          artifactName: BlobArtifacts

      - task: DownloadBuildArtifacts@0
        displayName: Download Asset Manifests
        inputs:
          buildType: current
          artifactName: AssetManifests

      - task: PowerShell@2
        displayName: Publish
        inputs:
          filePath: eng\common\sdk-task.ps1
          arguments: -task PublishToPackageFeed -restore -msbuildEngine dotnet 
            /p:AccountKeyToStaticFeed='$(dotnetfeed-storage-access-key-1)' 
            /p:BARBuildId=$(BARBuildId) 
            /p:MaestroApiEndpoint='https://maestro-prod.westus2.cloudapp.azure.com'
            /p:BuildAssetRegistryToken='$(MaestroAccessToken)' 
            /p:ManifestsBasePath='$(Build.ArtifactStagingDirectory)/AssetManifests/' 
            /p:BlobBasePath='$(Build.ArtifactStagingDirectory)/BlobArtifacts/' 
            /p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts/' 
            /p:ArtifactsCategory='$(_DotNetArtifactsCategory)' 
            /p:OverrideAssetsWithSameName=true 
            /p:PassIfExistingItemIdentical=true 
            /p:Configuration=Release 
        

- stage: PublishValidation
  displayName: Publish Validation
  variables:
    - template: ../common-variables.yml  
  jobs:
  - template: ../setup-maestro-vars.yml

  - ${{ if eq(parameters.enableSymbolValidation, 'true') }}:
    - job:
      displayName: Symbol Availability
      dependsOn: setupMaestroVars
      condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], variables.PublicDevRelease_30_Channel_Id)
      pool:
        vmImage: 'windows-2019'
      steps:
        - task: DownloadBuildArtifacts@0
          displayName: Download Package Artifacts
          inputs:
            buildType: current
            artifactName: PackageArtifacts

        - task: PowerShell@2
          displayName: Check Symbol Availability
          inputs:
            filePath: $(Build.SourcesDirectory)/eng/common/post-build/symbols-validation.ps1
            arguments: -InputPath $(Build.ArtifactStagingDirectory)/PackageArtifacts/ -ExtractPath $(Agent.BuildDirectory)/Temp/ -DotnetSymbolVersion $(SymbolToolVersion)

  - job:
    displayName: Gather Drop
    dependsOn: setupMaestroVars
    variables:
      BARBuildId: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
    condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], variables.PublicDevRelease_30_Channel_Id)
    pool:
      vmImage: 'windows-2019'
    steps:
      - task: PowerShell@2
        displayName: Setup Darc CLI
        inputs:
          targetType: filePath
          filePath: '$(Build.SourcesDirectory)/eng/common/darc-init.ps1'

      - task: PowerShell@2
        displayName: Run Darc gather-drop
        inputs:
          targetType: inline
          script: |
            darc gather-drop --non-shipping --continue-on-error --id $(BARBuildId) --output-dir $(Agent.BuildDirectory)/Temp/Drop/ --bar-uri https://maestro-prod.westus2.cloudapp.azure.com/ --password $(MaestroAccessToken) --latest-location

  - template: ../promote-build.yml
    parameters:
      ChannelId: ${{ variables.PublicDevRelease_30_Channel_Id }}