Update dependencies from https://github.com/dotnet/arcade build 20200129.8 (#6261)

- Microsoft.DotNet.Arcade.Sdk - 5.0.0-beta.20079.8
This commit is contained in:
dotnet-maestro[bot] 2020-01-30 13:35:10 +00:00 committed by GitHub
parent b5630661fe
commit 0216278652
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
15 changed files with 286 additions and 131 deletions

View file

@ -104,9 +104,9 @@
</Dependency> </Dependency>
</ProductDependencies> </ProductDependencies>
<ToolsetDependencies> <ToolsetDependencies>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="5.0.0-beta.20072.3"> <Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="5.0.0-beta.20079.8">
<Uri>https://github.com/dotnet/arcade</Uri> <Uri>https://github.com/dotnet/arcade</Uri>
<Sha>0fb5c992a80a6fb52bfb1d2b726f75157c1ce210</Sha> <Sha>8466781af43871ee0d4a1655acc008a305a62c0e</Sha>
</Dependency> </Dependency>
</ToolsetDependencies> </ToolsetDependencies>
</Dependencies> </Dependencies>

View file

@ -24,13 +24,15 @@ function InstallDarcCli ($darcVersion) {
$darcVersion = $(Invoke-WebRequest -Uri $versionEndpoint -UseBasicParsing).Content $darcVersion = $(Invoke-WebRequest -Uri $versionEndpoint -UseBasicParsing).Content
} }
$arcadeServicesSource = 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json' $arcadeServicesSource = 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json'
Write-Host "Installing Darc CLI version $darcVersion..." Write-Host "Installing Darc CLI version $darcVersion..."
Write-Host 'You may need to restart your command window if this is the first dotnet tool you have installed.' Write-Host 'You may need to restart your command window if this is the first dotnet tool you have installed.'
if (-not $toolpath) { if (-not $toolpath) {
Write-Host "'$dotnet' tool install $darcCliPackageName --version $darcVersion --add-source '$arcadeServicesSource' -v $verbosity -g"
& "$dotnet" tool install $darcCliPackageName --version $darcVersion --add-source "$arcadeServicesSource" -v $verbosity -g & "$dotnet" tool install $darcCliPackageName --version $darcVersion --add-source "$arcadeServicesSource" -v $verbosity -g
}else { }else {
Write-Host "'$dotnet' tool install $darcCliPackageName --version $darcVersion --add-source '$arcadeServicesSource' -v $verbosity -g --tool-path '$toolpath'"
& "$dotnet" tool install $darcCliPackageName --version $darcVersion --add-source "$arcadeServicesSource" -v $verbosity --tool-path "$toolpath" & "$dotnet" tool install $darcCliPackageName --version $darcVersion --add-source "$arcadeServicesSource" -v $verbosity --tool-path "$toolpath"
} }
} }

View file

@ -3,7 +3,7 @@ Param(
[Parameter(Mandatory=$true)][string] $gitHubPat, # GitHub personal access token from https://github.com/settings/tokens (no auth scopes needed) [Parameter(Mandatory=$true)][string] $gitHubPat, # GitHub personal access token from https://github.com/settings/tokens (no auth scopes needed)
[Parameter(Mandatory=$true)][string] $azdoPat, # Azure Dev Ops tokens from https://dev.azure.com/dnceng/_details/security/tokens (code read scope needed) [Parameter(Mandatory=$true)][string] $azdoPat, # Azure Dev Ops tokens from https://dev.azure.com/dnceng/_details/security/tokens (code read scope needed)
[Parameter(Mandatory=$true)][string] $outputFolder, # Where the graphviz.txt file will be created [Parameter(Mandatory=$true)][string] $outputFolder, # Where the graphviz.txt file will be created
[string] $darcVersion = '1.1.0-beta.19175.6', # darc's version [string] $darcVersion, # darc's version
[string] $graphvizVersion = '2.38', # GraphViz version [string] $graphvizVersion = '2.38', # GraphViz version
[switch] $includeToolset # Whether the graph should include toolset dependencies or not. i.e. arcade, optimization. For more about [switch] $includeToolset # Whether the graph should include toolset dependencies or not. i.e. arcade, optimization. For more about
# toolset dependencies see https://github.com/dotnet/arcade/blob/master/Documentation/Darc.md#toolset-vs-product-dependencies # toolset dependencies see https://github.com/dotnet/arcade/blob/master/Documentation/Darc.md#toolset-vs-product-dependencies

View file

@ -9,7 +9,7 @@ Param(
[string] $Branch=$env:BUILD_SOURCEBRANCH, [string] $Branch=$env:BUILD_SOURCEBRANCH,
[string] $CommitSha=$env:BUILD_SOURCEVERSION, [string] $CommitSha=$env:BUILD_SOURCEVERSION,
[string] $BuildNumber=$env:BUILD_BUILDNUMBER, [string] $BuildNumber=$env:BUILD_BUILDNUMBER,
[string] $RunCategories="coreclr corefx", [string] $RunCategories="Libraries Runtime",
[string] $Csproj="src\benchmarks\micro\MicroBenchmarks.csproj", [string] $Csproj="src\benchmarks\micro\MicroBenchmarks.csproj",
[string] $Kind="micro", [string] $Kind="micro",
[switch] $Internal, [switch] $Internal,

View file

@ -13,7 +13,7 @@ build_number=$BUILD_BUILDNUMBER
internal=false internal=false
compare=false compare=false
kind="micro" kind="micro"
run_categories="coreclr corefx" run_categories="Libraries Runtime"
csproj="src\benchmarks\micro\MicroBenchmarks.csproj" csproj="src\benchmarks\micro\MicroBenchmarks.csproj"
configurations= configurations=
run_from_perf_repo=false run_from_perf_repo=false

View file

@ -17,7 +17,7 @@ try {
ExitWithExitCode 1 ExitWithExitCode 1
} }
# Get info about which channels the build has already been promoted to # Get info about which channel(s) the build has already been promoted to
$buildInfo = Get-MaestroBuild -BuildId $BuildId $buildInfo = Get-MaestroBuild -BuildId $BuildId
if (!$buildInfo) { if (!$buildInfo) {

View file

@ -1,4 +1,5 @@
parameters: parameters:
enable: 'false' # Whether the SDL validation job should execute or not
overrideParameters: '' # Optional: to override values for parameters. overrideParameters: '' # Optional: to override values for parameters.
additionalParameters: '' # Optional: parameters that need user specific values eg: '-SourceToolsList @("abc","def") -ArtifactToolsList @("ghi","jkl")' additionalParameters: '' # Optional: parameters that need user specific values eg: '-SourceToolsList @("abc","def") -ArtifactToolsList @("ghi","jkl")'
# There is some sort of bug (has been reported) in Azure DevOps where if this parameter is named # There is some sort of bug (has been reported) in Azure DevOps where if this parameter is named
@ -16,8 +17,15 @@ jobs:
- job: Run_SDL - job: Run_SDL
dependsOn: ${{ parameters.dependsOn }} dependsOn: ${{ parameters.dependsOn }}
displayName: Run SDL tool displayName: Run SDL tool
condition: eq( ${{ parameters.enable }}, 'true')
variables: variables:
- group: DotNet-VSTS-Bot - group: DotNet-VSTS-Bot
- name: AzDOProjectName
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ]
- name: AzDOPipelineId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ]
- name: AzDOBuildId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ]
pool: pool:
name: Hosted VS2017 name: Hosted VS2017
steps: steps:
@ -28,14 +36,22 @@ jobs:
- task: DownloadBuildArtifacts@0 - task: DownloadBuildArtifacts@0
displayName: Download Build Artifacts displayName: Download Build Artifacts
inputs: inputs:
buildType: current buildType: specific
buildVersionToDownload: specific
project: $(AzDOProjectName)
pipeline: $(AzDOPipelineId)
buildId: $(AzDOBuildId)
artifactName: ${{ artifactName }} artifactName: ${{ artifactName }}
downloadPath: $(Build.ArtifactStagingDirectory)\artifacts downloadPath: $(Build.ArtifactStagingDirectory)\artifacts
- ${{ if eq(parameters.artifactNames, '') }}: - ${{ if eq(parameters.artifactNames, '') }}:
- task: DownloadBuildArtifacts@0 - task: DownloadBuildArtifacts@0
displayName: Download Build Artifacts displayName: Download Build Artifacts
inputs: inputs:
buildType: current buildType: specific
buildVersionToDownload: specific
project: $(AzDOProjectName)
pipeline: $(AzDOPipelineId)
buildId: $(AzDOBuildId)
downloadType: specific files downloadType: specific files
itemPattern: "**" itemPattern: "**"
downloadPath: $(Build.ArtifactStagingDirectory)\artifacts downloadPath: $(Build.ArtifactStagingDirectory)\artifacts

View file

@ -23,9 +23,15 @@ stages:
- job: publish_symbols - job: publish_symbols
displayName: Symbol Publishing displayName: Symbol Publishing
dependsOn: setupMaestroVars dependsOn: setupMaestroVars
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }} )) condition: or(contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }} )), eq(dependencies.setupMaestroVars.outputs['setReleaseVars.PromoteToMaestroChannelId'], ${{ parameters.channelId }}))
variables: variables:
- group: DotNet-Symbol-Server-Pats - group: DotNet-Symbol-Server-Pats
- name: AzDOProjectName
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ]
- name: AzDOPipelineId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ]
- name: AzDOBuildId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ]
pool: pool:
vmImage: 'windows-2019' vmImage: 'windows-2019'
steps: steps:
@ -33,7 +39,11 @@ stages:
displayName: Download Build Assets displayName: Download Build Assets
continueOnError: true continueOnError: true
inputs: inputs:
buildType: 'current' buildType: specific
buildVersionToDownload: specific
project: $(AzDOProjectName)
pipeline: $(AzDOPipelineId)
buildId: $(AzDOBuildId)
downloadType: 'specific' downloadType: 'specific'
itemPattern: | itemPattern: |
PDBArtifacts/** PDBArtifacts/**
@ -79,7 +89,13 @@ stages:
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ] value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
- name: IsStableBuild - name: IsStableBuild
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.IsStableBuild'] ] value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.IsStableBuild'] ]
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }})) - name: AzDOProjectName
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ]
- name: AzDOPipelineId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ]
- name: AzDOBuildId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ]
condition: or(contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }} )), eq(dependencies.setupMaestroVars.outputs['setReleaseVars.PromoteToMaestroChannelId'], ${{ parameters.channelId }}))
pool: pool:
vmImage: 'windows-2019' vmImage: 'windows-2019'
steps: steps:
@ -87,7 +103,11 @@ stages:
displayName: Download Build Assets displayName: Download Build Assets
continueOnError: true continueOnError: true
inputs: inputs:
buildType: 'current' buildType: specific
buildVersionToDownload: specific
project: $(AzDOProjectName)
pipeline: $(AzDOPipelineId)
buildId: $(AzDOBuildId)
downloadType: 'specific' downloadType: 'specific'
itemPattern: | itemPattern: |
PackageArtifacts/** PackageArtifacts/**
@ -146,6 +166,6 @@ stages:
StageLabel: '${{ parameters.stageName }}' StageLabel: '${{ parameters.stageName }}'
JobLabel: 'AssetsPublishing' JobLabel: 'AssetsPublishing'
- template: ../../steps/promote-build.yml - template: ../../steps/add-build-to-channel.yml
parameters: parameters:
ChannelId: ${{ parameters.channelId }} ChannelId: ${{ parameters.channelId }}

View file

@ -23,9 +23,15 @@ stages:
- job: publish_symbols - job: publish_symbols
displayName: Symbol Publishing displayName: Symbol Publishing
dependsOn: setupMaestroVars dependsOn: setupMaestroVars
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }} )) condition: or(contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }} )), eq(dependencies.setupMaestroVars.outputs['setReleaseVars.PromoteToMaestroChannelId'], ${{ parameters.channelId }}))
variables: variables:
- group: DotNet-Symbol-Server-Pats - group: DotNet-Symbol-Server-Pats
- name: AzDOProjectName
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ]
- name: AzDOPipelineId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ]
- name: AzDOBuildId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ]
pool: pool:
vmImage: 'windows-2019' vmImage: 'windows-2019'
steps: steps:
@ -33,7 +39,11 @@ stages:
displayName: Download Build Assets displayName: Download Build Assets
continueOnError: true continueOnError: true
inputs: inputs:
buildType: 'current' buildType: specific
buildVersionToDownload: specific
project: $(AzDOProjectName)
pipeline: $(AzDOPipelineId)
buildId: $(AzDOBuildId)
downloadType: 'specific' downloadType: 'specific'
itemPattern: | itemPattern: |
PDBArtifacts/** PDBArtifacts/**
@ -78,7 +88,13 @@ stages:
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ] value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
- name: IsStableBuild - name: IsStableBuild
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.IsStableBuild'] ] value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.IsStableBuild'] ]
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }})) - name: AzDOProjectName
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ]
- name: AzDOPipelineId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ]
- name: AzDOBuildId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ]
condition: or(contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }} )), eq(dependencies.setupMaestroVars.outputs['setReleaseVars.PromoteToMaestroChannelId'], ${{ parameters.channelId }}))
pool: pool:
vmImage: 'windows-2019' vmImage: 'windows-2019'
steps: steps:
@ -86,7 +102,11 @@ stages:
displayName: Download Build Assets displayName: Download Build Assets
continueOnError: true continueOnError: true
inputs: inputs:
buildType: 'current' buildType: specific
buildVersionToDownload: specific
project: $(AzDOProjectName)
pipeline: $(AzDOPipelineId)
buildId: $(AzDOBuildId)
downloadType: 'specific' downloadType: 'specific'
itemPattern: | itemPattern: |
PackageArtifacts/** PackageArtifacts/**
@ -145,6 +165,6 @@ stages:
StageLabel: '${{ parameters.stageName }}' StageLabel: '${{ parameters.stageName }}'
JobLabel: 'AssetsPublishing' JobLabel: 'AssetsPublishing'
- template: ../../steps/promote-build.yml - template: ../../steps/add-build-to-channel.yml
parameters: parameters:
ChannelId: ${{ parameters.channelId }} ChannelId: ${{ parameters.channelId }}

View file

@ -26,97 +26,136 @@ stages:
- stage: Validate - stage: Validate
dependsOn: ${{ parameters.validateDependsOn }} dependsOn: ${{ parameters.validateDependsOn }}
displayName: Validate displayName: Validate
variables:
- template: common-variables.yml
jobs: jobs:
- ${{ if eq(parameters.enableNugetValidation, 'true') }}: - template: setup-maestro-vars.yml
- job:
displayName: NuGet Validation
pool:
vmImage: 'windows-2019'
steps:
- task: DownloadBuildArtifacts@0
displayName: Download Package Artifacts
inputs:
buildType: current
artifactName: PackageArtifacts
- task: PowerShell@2 - job:
displayName: Validate displayName: NuGet Validation
inputs: dependsOn: setupMaestroVars
filePath: $(Build.SourcesDirectory)/eng/common/post-build/nuget-validation.ps1 condition: eq( ${{ parameters.enableNugetValidation }}, 'true')
arguments: -PackagesPath $(Build.ArtifactStagingDirectory)/PackageArtifacts/ pool:
-ToolDestinationPath $(Agent.BuildDirectory)/Extract/ vmImage: 'windows-2019'
variables:
- name: AzDOProjectName
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ]
- name: AzDOPipelineId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ]
- name: AzDOBuildId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ]
steps:
- task: DownloadBuildArtifacts@0
displayName: Download Package Artifacts
inputs:
buildType: specific
buildVersionToDownload: specific
project: $(AzDOProjectName)
pipeline: $(AzDOPipelineId)
buildId: $(AzDOBuildId)
artifactName: PackageArtifacts
- ${{ if eq(parameters.enableSigningValidation, 'true') }}: - task: PowerShell@2
- job: displayName: Validate
displayName: Signing Validation inputs:
variables: filePath: $(Build.SourcesDirectory)/eng/common/post-build/nuget-validation.ps1
- template: common-variables.yml arguments: -PackagesPath $(Build.ArtifactStagingDirectory)/PackageArtifacts/
pool: -ToolDestinationPath $(Agent.BuildDirectory)/Extract/
vmImage: 'windows-2019'
steps:
- task: DownloadBuildArtifacts@0
displayName: Download Package Artifacts
inputs:
buildType: current
artifactName: PackageArtifacts
# This is necessary whenever we want to publish/restore to an AzDO private feed - job:
# Since sdk-task.ps1 tries to restore packages we need to do this authentication here displayName: Signing Validation
# otherwise it'll complain about accessing a private feed. dependsOn: setupMaestroVars
- task: NuGetAuthenticate@0 condition: eq( ${{ parameters.enableSigningValidation }}, 'true')
displayName: 'Authenticate to AzDO Feeds' variables:
- template: common-variables.yml
- name: AzDOProjectName
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ]
- name: AzDOPipelineId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ]
- name: AzDOBuildId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ]
pool:
vmImage: 'windows-2019'
steps:
- task: DownloadBuildArtifacts@0
displayName: Download Package Artifacts
inputs:
buildType: specific
buildVersionToDownload: specific
project: $(AzDOProjectName)
pipeline: $(AzDOPipelineId)
buildId: $(AzDOBuildId)
artifactName: PackageArtifacts
- task: PowerShell@2 # This is necessary whenever we want to publish/restore to an AzDO private feed
displayName: Enable cross-org publishing # Since sdk-task.ps1 tries to restore packages we need to do this authentication here
inputs: # otherwise it'll complain about accessing a private feed.
filePath: eng\common\enable-cross-org-publishing.ps1 - task: NuGetAuthenticate@0
arguments: -token $(dn-bot-dnceng-artifact-feeds-rw) displayName: 'Authenticate to AzDO Feeds'
- task: PowerShell@2 - task: PowerShell@2
displayName: Validate displayName: Enable cross-org publishing
inputs: inputs:
filePath: eng\common\sdk-task.ps1 filePath: eng\common\enable-cross-org-publishing.ps1
arguments: -task SigningValidation -restore -msbuildEngine dotnet arguments: -token $(dn-bot-dnceng-artifact-feeds-rw)
/p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts'
/p:SignCheckExclusionsFile='$(Build.SourcesDirectory)/eng/SignCheckExclusionsFile.txt'
${{ parameters.signingValidationAdditionalParameters }}
- template: ../steps/publish-logs.yml - task: PowerShell@2
parameters: displayName: Validate
StageLabel: 'Validation' inputs:
JobLabel: 'Signing' filePath: eng\common\sdk-task.ps1
arguments: -task SigningValidation -restore -msbuildEngine dotnet
/p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts'
/p:SignCheckExclusionsFile='$(Build.SourcesDirectory)/eng/SignCheckExclusionsFile.txt'
${{ parameters.signingValidationAdditionalParameters }}
- ${{ if eq(parameters.enableSourceLinkValidation, 'true') }}: - template: ../steps/publish-logs.yml
- job: parameters:
displayName: SourceLink Validation StageLabel: 'Validation'
variables: JobLabel: 'Signing'
- template: common-variables.yml
pool:
vmImage: 'windows-2019'
steps:
- task: DownloadBuildArtifacts@0
displayName: Download Blob Artifacts
inputs:
buildType: current
artifactName: BlobArtifacts
- task: PowerShell@2 - job:
displayName: Validate displayName: SourceLink Validation
inputs: dependsOn: setupMaestroVars
filePath: $(Build.SourcesDirectory)/eng/common/post-build/sourcelink-validation.ps1 condition: eq( ${{ parameters.enableSourceLinkValidation }}, 'true')
arguments: -InputPath $(Build.ArtifactStagingDirectory)/BlobArtifacts/ variables:
-ExtractPath $(Agent.BuildDirectory)/Extract/ - template: common-variables.yml
-GHRepoName $(Build.Repository.Name) - name: AzDOProjectName
-GHCommit $(Build.SourceVersion) value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ]
-SourcelinkCliVersion $(SourceLinkCLIVersion) - name: AzDOPipelineId
continueOnError: true value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ]
- name: AzDOBuildId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ]
pool:
vmImage: 'windows-2019'
steps:
- task: DownloadBuildArtifacts@0
displayName: Download Blob Artifacts
inputs:
buildType: specific
buildVersionToDownload: specific
project: $(AzDOProjectName)
pipeline: $(AzDOPipelineId)
buildId: $(AzDOBuildId)
artifactName: BlobArtifacts
- ${{ if eq(parameters.SDLValidationParameters.enable, 'true') }}: - task: PowerShell@2
- template: /eng/common/templates/job/execute-sdl.yml displayName: Validate
parameters: inputs:
additionalParameters: ${{ parameters.SDLValidationParameters.params }} filePath: $(Build.SourcesDirectory)/eng/common/post-build/sourcelink-validation.ps1
continueOnError: ${{ parameters.SDLValidationParameters.continueOnError }} arguments: -InputPath $(Build.ArtifactStagingDirectory)/BlobArtifacts/
artifactNames: ${{ parameters.SDLValidationParameters.artifactNames }} -ExtractPath $(Agent.BuildDirectory)/Extract/
-GHRepoName $(Build.Repository.Name)
-GHCommit $(Build.SourceVersion)
-SourcelinkCliVersion $(SourceLinkCLIVersion)
continueOnError: true
- template: /eng/common/templates/job/execute-sdl.yml
parameters:
enable: ${{ parameters.SDLValidationParameters.enable }}
dependsOn: setupMaestroVars
additionalParameters: ${{ parameters.SDLValidationParameters.params }}
continueOnError: ${{ parameters.SDLValidationParameters.continueOnError }}
artifactNames: ${{ parameters.SDLValidationParameters.artifactNames }}
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml - template: \eng\common\templates\post-build\channels\generic-public-channel.yml
parameters: parameters:
@ -221,3 +260,29 @@ stages:
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-experimental/nuget/v3/index.json' transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-experimental/nuget/v3/index.json'
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-experimental/nuget/v3/index.json' shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-experimental/nuget/v3/index.json'
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-experimental-symbols/nuget/v3/index.json' symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-experimental-symbols/nuget/v3/index.json'
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
parameters:
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
dependsOn: ${{ parameters.publishDependsOn }}
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
stageName: 'Net_Eng_Services_Int_Publish'
channelName: '.NET Eng Services - Int'
channelId: 678
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json'
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json'
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng-symbols/nuget/v3/index.json'
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
parameters:
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
dependsOn: ${{ parameters.publishDependsOn }}
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
stageName: 'Net_Eng_Services_Prod_Publish'
channelName: '.NET Eng Services - Prod'
channelId: 679
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json'
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json'
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng-symbols/nuget/v3/index.json'

View file

@ -1,25 +0,0 @@
parameters:
ChannelId: 0
jobs:
- job:
displayName: Promote Build
dependsOn: setupMaestroVars
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.ChannelId }}))
variables:
- name: BARBuildId
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
- name: ChannelId
value: ${{ parameters.ChannelId }}
pool:
vmImage: 'windows-2019'
steps:
- task: PowerShell@2
displayName: Add Build to Channel
inputs:
filePath: $(Build.SourcesDirectory)/eng/common/post-build/promote-build.ps1
arguments: -BuildId $(BARBuildId)
-ChannelId $(ChannelId)
-MaestroApiAccessToken $(MaestroApiAccessToken)
-MaestroApiEndPoint $(MaestroApiEndPoint)
-MaestroApiVersion $(MaestroApiVersion)

View file

@ -1,6 +1,12 @@
jobs: jobs:
- job: setupMaestroVars - job: setupMaestroVars
displayName: Setup Maestro Vars displayName: Setup Maestro Vars
variables:
- template: common-variables.yml
- name: BuildId
value: $[ coalesce(variables.BARBuildId, 0) ]
- name: PromoteToChannelId
value: $[ coalesce(variables.PromoteToMaestroChannelId, 0) ]
pool: pool:
vmImage: 'windows-2019' vmImage: 'windows-2019'
steps: steps:
@ -8,6 +14,7 @@ jobs:
- task: DownloadBuildArtifacts@0 - task: DownloadBuildArtifacts@0
displayName: Download Release Configs displayName: Download Release Configs
condition: eq(variables.PromoteToChannelId, 0)
inputs: inputs:
buildType: current buildType: current
artifactName: ReleaseConfigs artifactName: ReleaseConfigs
@ -19,18 +26,50 @@ jobs:
targetType: inline targetType: inline
script: | script: |
try { try {
$Content = Get-Content $(Build.StagingDirectory)/ReleaseConfigs/ReleaseConfigs.txt if ($Env:PromoteToChannelId -eq 0) {
$Content = Get-Content $(Build.StagingDirectory)/ReleaseConfigs/ReleaseConfigs.txt
$BarId = $Content | Select -Index 0 $BarId = $Content | Select -Index 0
$Channels = "" $Channels = ""
$Content | Select -Index 1 | ForEach-Object { $Channels += "$_ ," } $Content | Select -Index 1 | ForEach-Object { $Channels += "$_ ," }
$IsStableBuild = $Content | Select -Index 2
$IsStableBuild = $Content | Select -Index 2 $AzureDevOpsProject = $Env:System_TeamProject
$AzureDevOpsBuildDefinitionId = $Env:System_DefinitionId
$AzureDevOpsBuildId = $Env:Build_BuildId
$PromoteToMaestroChannelId = 0
}
else {
$buildApiEndpoint = "${Env:MaestroApiEndPoint}/api/builds/${Env:BARBuildId}?api-version=${Env:MaestroApiVersion}"
$apiHeaders = New-Object 'System.Collections.Generic.Dictionary[[String],[String]]'
$apiHeaders.Add('Accept', 'application/json')
$apiHeaders.Add('Authorization',"Bearer ${Env:MAESTRO_API_TOKEN}")
$buildInfo = try { Invoke-WebRequest -Method Get -Uri $buildApiEndpoint -Headers $apiHeaders | ConvertFrom-Json } catch { Write-Host "Error: $_" }
$BarId = $Env:BARBuildId
$Channels = 'None'
#TODO: Fix this once this issue is done: https://github.com/dotnet/arcade/issues/3834
$IsStableBuild = 'False'
$AzureDevOpsProject = $buildInfo.azureDevOpsProject
$AzureDevOpsBuildDefinitionId = $buildInfo.azureDevOpsBuildDefinitionId
$AzureDevOpsBuildId = $buildInfo.azureDevOpsBuildId
$PromoteToMaestroChannelId = $Env:PromoteToMaestroChannelId
}
Write-Host "##vso[task.setvariable variable=BARBuildId;isOutput=true]$BarId" Write-Host "##vso[task.setvariable variable=BARBuildId;isOutput=true]$BarId"
Write-Host "##vso[task.setvariable variable=InitialChannels;isOutput=true]$Channels" Write-Host "##vso[task.setvariable variable=InitialChannels;isOutput=true]$Channels"
Write-Host "##vso[task.setvariable variable=IsStableBuild;isOutput=true]$IsStableBuild" Write-Host "##vso[task.setvariable variable=IsStableBuild;isOutput=true]$IsStableBuild"
Write-Host "##vso[task.setvariable variable=AzDOProjectName;isOutput=true]$AzureDevOpsProject"
Write-Host "##vso[task.setvariable variable=AzDOPipelineId;isOutput=true]$AzureDevOpsBuildDefinitionId"
Write-Host "##vso[task.setvariable variable=AzDOBuildId;isOutput=true]$AzureDevOpsBuildId"
Write-Host "##vso[task.setvariable variable=PromoteToMaestroChannelId;isOutput=true]$PromoteToMaestroChannelId"
} }
catch { catch {
Write-Host $_ Write-Host $_
@ -38,3 +77,5 @@ jobs:
Write-Host $_.ScriptStackTrace Write-Host $_.ScriptStackTrace
exit 1 exit 1
} }
env:
MAESTRO_API_TOKEN: $(MaestroApiAccessToken)

View file

@ -0,0 +1,13 @@
parameters:
ChannelId: 0
steps:
- task: PowerShell@2
displayName: Add Build to Channel
inputs:
filePath: $(Build.SourcesDirectory)/eng/common/post-build/add-build-to-channel.ps1
arguments: -BuildId $(BARBuildId)
-ChannelId ${{ parameters.ChannelId }}
-MaestroApiAccessToken $(MaestroApiAccessToken)
-MaestroApiEndPoint $(MaestroApiEndPoint)
-MaestroApiVersion $(MaestroApiVersion)

View file

@ -655,6 +655,9 @@ Write-PipelineSetVariable -Name 'Artifacts.Log' -Value $LogDir
Write-PipelineSetVariable -Name 'TEMP' -Value $TempDir Write-PipelineSetVariable -Name 'TEMP' -Value $TempDir
Write-PipelineSetVariable -Name 'TMP' -Value $TempDir Write-PipelineSetVariable -Name 'TMP' -Value $TempDir
$env:TEMP=$TempDir
$env:TMP=$TempDir
# Import custom tools configuration, if present in the repo. # Import custom tools configuration, if present in the repo.
# Note: Import in global scope so that the script set top-level variables without qualification. # Note: Import in global scope so that the script set top-level variables without qualification.
if (!$disableConfigureToolsetImport) { if (!$disableConfigureToolsetImport) {

View file

@ -3,6 +3,6 @@
"dotnet": "5.0.100-alpha1-015949" "dotnet": "5.0.100-alpha1-015949"
}, },
"msbuild-sdks": { "msbuild-sdks": {
"Microsoft.DotNet.Arcade.Sdk": "5.0.0-beta.20072.3" "Microsoft.DotNet.Arcade.Sdk": "5.0.0-beta.20079.8"
} }
} }