Merge in 'release/3.1' changes
This commit is contained in:
commit
d0cca8c2b5
|
|
@ -417,17 +417,17 @@
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>d40e21ccc14908a054b2181b1d6aeb22c49c630d</Sha>
|
<Sha>d40e21ccc14908a054b2181b1d6aeb22c49c630d</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.DotNet.GenAPI" Version="1.0.0-beta.19517.3">
|
<Dependency Name="Microsoft.DotNet.GenAPI" Version="1.0.0-beta.19607.3">
|
||||||
<Uri>https://github.com/dotnet/arcade</Uri>
|
<Uri>https://github.com/dotnet/arcade</Uri>
|
||||||
<Sha>a42a124635ce1a218309ecb31ec59d559cacb886</Sha>
|
<Sha>4d80b9cfa53e309c8f685abff3512f60c3d8a3d1</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="1.0.0-beta.19517.3">
|
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="1.0.0-beta.19607.3">
|
||||||
<Uri>https://github.com/dotnet/arcade</Uri>
|
<Uri>https://github.com/dotnet/arcade</Uri>
|
||||||
<Sha>a42a124635ce1a218309ecb31ec59d559cacb886</Sha>
|
<Sha>4d80b9cfa53e309c8f685abff3512f60c3d8a3d1</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="2.0.0-beta.19517.3">
|
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="2.0.0-beta.19607.3">
|
||||||
<Uri>https://github.com/dotnet/arcade</Uri>
|
<Uri>https://github.com/dotnet/arcade</Uri>
|
||||||
<Sha>a42a124635ce1a218309ecb31ec59d559cacb886</Sha>
|
<Sha>4d80b9cfa53e309c8f685abff3512f60c3d8a3d1</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.AspNetCore.Testing" Version="3.1.1-servicing.19604.6" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.AspNetCore.Testing" Version="3.1.1-servicing.19604.6" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
|
|
|
||||||
|
|
@ -65,7 +65,7 @@
|
||||||
-->
|
-->
|
||||||
<PropertyGroup Label="Automated">
|
<PropertyGroup Label="Automated">
|
||||||
<!-- Packages from dotnet/arcade -->
|
<!-- Packages from dotnet/arcade -->
|
||||||
<MicrosoftDotNetGenAPIPackageVersion>1.0.0-beta.19517.3</MicrosoftDotNetGenAPIPackageVersion>
|
<MicrosoftDotNetGenAPIPackageVersion>1.0.0-beta.19607.3</MicrosoftDotNetGenAPIPackageVersion>
|
||||||
<!-- Packages from dotnet/roslyn -->
|
<!-- Packages from dotnet/roslyn -->
|
||||||
<MicrosoftNetCompilersToolsetPackageVersion>3.4.0-beta4-19569-03</MicrosoftNetCompilersToolsetPackageVersion>
|
<MicrosoftNetCompilersToolsetPackageVersion>3.4.0-beta4-19569-03</MicrosoftNetCompilersToolsetPackageVersion>
|
||||||
<!-- Packages from dotnet/core-setup -->
|
<!-- Packages from dotnet/core-setup -->
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,143 @@
|
||||||
|
# This file is a temporary workaround for internal builds to be able to restore from private AzDO feeds.
|
||||||
|
# This file should be removed as part of this issue: https://github.com/dotnet/arcade/issues/4080
|
||||||
|
#
|
||||||
|
# What the script does is iterate over all package sources in the pointed NuGet.config and add a credential entry
|
||||||
|
# under <packageSourceCredentials> for each Maestro managed private feed. Two additional credential
|
||||||
|
# entries are also added for the two private static internal feeds: dotnet3-internal and dotnet3-internal-transport.
|
||||||
|
#
|
||||||
|
# This script needs to be called in every job that will restore packages and which the base repo has
|
||||||
|
# private AzDO feeds in the NuGet.config.
|
||||||
|
#
|
||||||
|
# See example YAML call for this script below. Note the use of the variable `$(dn-bot-dnceng-artifact-feeds-rw)`
|
||||||
|
# from the AzureDevOps-Artifact-Feeds-Pats variable group.
|
||||||
|
#
|
||||||
|
# - task: PowerShell@2
|
||||||
|
# displayName: Setup Private Feeds Credentials
|
||||||
|
# condition: eq(variables['Agent.OS'], 'Windows_NT')
|
||||||
|
# inputs:
|
||||||
|
# filePath: $(Build.SourcesDirectory)/eng/common/SetupNugetSources.ps1
|
||||||
|
# arguments: -ConfigFile $(Build.SourcesDirectory)/NuGet.config -Password $Env:Token
|
||||||
|
# env:
|
||||||
|
# Token: $(dn-bot-dnceng-artifact-feeds-rw)
|
||||||
|
|
||||||
|
[CmdletBinding()]
|
||||||
|
param (
|
||||||
|
[Parameter(Mandatory = $true)][string]$ConfigFile,
|
||||||
|
[Parameter(Mandatory = $true)][string]$Password
|
||||||
|
)
|
||||||
|
|
||||||
|
$ErrorActionPreference = "Stop"
|
||||||
|
Set-StrictMode -Version 2.0
|
||||||
|
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
|
||||||
|
|
||||||
|
. $PSScriptRoot\tools.ps1
|
||||||
|
|
||||||
|
# Add source entry to PackageSources
|
||||||
|
function AddPackageSource($sources, $SourceName, $SourceEndPoint, $creds, $Username, $Password) {
|
||||||
|
$packageSource = $sources.SelectSingleNode("add[@key='$SourceName']")
|
||||||
|
|
||||||
|
if ($packageSource -eq $null)
|
||||||
|
{
|
||||||
|
$packageSource = $doc.CreateElement("add")
|
||||||
|
$packageSource.SetAttribute("key", $SourceName)
|
||||||
|
$packageSource.SetAttribute("value", $SourceEndPoint)
|
||||||
|
$sources.AppendChild($packageSource) | Out-Null
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
Write-Host "Package source $SourceName already present."
|
||||||
|
}
|
||||||
|
|
||||||
|
AddCredential -Creds $creds -Source $SourceName -Username $Username -Password $Password
|
||||||
|
}
|
||||||
|
|
||||||
|
# Add a credential node for the specified source
|
||||||
|
function AddCredential($creds, $source, $username, $password) {
|
||||||
|
# Looks for credential configuration for the given SourceName. Create it if none is found.
|
||||||
|
$sourceElement = $creds.SelectSingleNode($Source)
|
||||||
|
if ($sourceElement -eq $null)
|
||||||
|
{
|
||||||
|
$sourceElement = $doc.CreateElement($Source)
|
||||||
|
$creds.AppendChild($sourceElement) | Out-Null
|
||||||
|
}
|
||||||
|
|
||||||
|
# Add the <Username> node to the credential if none is found.
|
||||||
|
$usernameElement = $sourceElement.SelectSingleNode("add[@key='Username']")
|
||||||
|
if ($usernameElement -eq $null)
|
||||||
|
{
|
||||||
|
$usernameElement = $doc.CreateElement("add")
|
||||||
|
$usernameElement.SetAttribute("key", "Username")
|
||||||
|
$sourceElement.AppendChild($usernameElement) | Out-Null
|
||||||
|
}
|
||||||
|
$usernameElement.SetAttribute("value", $Username)
|
||||||
|
|
||||||
|
# Add the <ClearTextPassword> to the credential if none is found.
|
||||||
|
# Add it as a clear text because there is no support for encrypted ones in non-windows .Net SDKs.
|
||||||
|
# -> https://github.com/NuGet/Home/issues/5526
|
||||||
|
$passwordElement = $sourceElement.SelectSingleNode("add[@key='ClearTextPassword']")
|
||||||
|
if ($passwordElement -eq $null)
|
||||||
|
{
|
||||||
|
$passwordElement = $doc.CreateElement("add")
|
||||||
|
$passwordElement.SetAttribute("key", "ClearTextPassword")
|
||||||
|
$sourceElement.AppendChild($passwordElement) | Out-Null
|
||||||
|
}
|
||||||
|
$passwordElement.SetAttribute("value", $Password)
|
||||||
|
}
|
||||||
|
|
||||||
|
function InsertMaestroPrivateFeedCredentials($Sources, $Creds, $Username, $Password) {
|
||||||
|
$maestroPrivateSources = $Sources.SelectNodes("add[contains(@key,'darc-int')]")
|
||||||
|
|
||||||
|
Write-Host "Inserting credentials for $($maestroPrivateSources.Count) Maestro's private feeds."
|
||||||
|
|
||||||
|
ForEach ($PackageSource in $maestroPrivateSources) {
|
||||||
|
Write-Host "`tInserting credential for Maestro's feed:" $PackageSource.Key
|
||||||
|
AddCredential -Creds $creds -Source $PackageSource.Key -Username $Username -Password $Password
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!(Test-Path $ConfigFile -PathType Leaf)) {
|
||||||
|
Write-PipelineTelemetryError -Category 'Build' -Message "Eng/common/SetupNugetSources.ps1 returned a non-zero exit code. Couldn't find the NuGet config file: $ConfigFile"
|
||||||
|
ExitWithExitCode 1
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$Password) {
|
||||||
|
Write-PipelineTelemetryError -Category 'Build' -Message 'Eng/common/SetupNugetSources.ps1 returned a non-zero exit code. Please supply a valid PAT'
|
||||||
|
ExitWithExitCode 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Load NuGet.config
|
||||||
|
$doc = New-Object System.Xml.XmlDocument
|
||||||
|
$filename = (Get-Item $ConfigFile).FullName
|
||||||
|
$doc.Load($filename)
|
||||||
|
|
||||||
|
# Get reference to <PackageSources> or create one if none exist already
|
||||||
|
$sources = $doc.DocumentElement.SelectSingleNode("packageSources")
|
||||||
|
if ($sources -eq $null) {
|
||||||
|
$sources = $doc.CreateElement("packageSources")
|
||||||
|
$doc.DocumentElement.AppendChild($sources) | Out-Null
|
||||||
|
}
|
||||||
|
|
||||||
|
# Looks for a <PackageSourceCredentials> node. Create it if none is found.
|
||||||
|
$creds = $doc.DocumentElement.SelectSingleNode("packageSourceCredentials")
|
||||||
|
if ($creds -eq $null) {
|
||||||
|
$creds = $doc.CreateElement("packageSourceCredentials")
|
||||||
|
$doc.DocumentElement.AppendChild($creds) | Out-Null
|
||||||
|
}
|
||||||
|
|
||||||
|
$userName = "dn-bot"
|
||||||
|
|
||||||
|
# Insert credential nodes for Maestro's private feeds
|
||||||
|
InsertMaestroPrivateFeedCredentials -Sources $sources -Creds $creds -Username $userName -Password $Password
|
||||||
|
|
||||||
|
$dotnet3Source = $sources.SelectSingleNode("add[@key='dotnet3']")
|
||||||
|
if ($dotnet3Source -ne $null) {
|
||||||
|
AddPackageSource -Sources $sources -SourceName "dotnet3-internal" -SourceEndPoint "https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal/nuget/v2" -Creds $creds -Username $userName -Password $Password
|
||||||
|
AddPackageSource -Sources $sources -SourceName "dotnet3-internal-transport" -SourceEndPoint "https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal-transport/nuget/v2" -Creds $creds -Username $userName -Password $Password
|
||||||
|
}
|
||||||
|
|
||||||
|
$dotnet31Source = $sources.SelectSingleNode("add[@key='dotnet3.1']")
|
||||||
|
if ($dotnet31Source -ne $null) {
|
||||||
|
AddPackageSource -Sources $sources -SourceName "dotnet3.1-internal" -SourceEndPoint "https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal/nuget/v2" -Creds $creds -Username $userName -Password $Password
|
||||||
|
AddPackageSource -Sources $sources -SourceName "dotnet3.1-internal-transport" -SourceEndPoint "https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal-transport/nuget/v2" -Creds $creds -Username $userName -Password $Password
|
||||||
|
}
|
||||||
|
|
||||||
|
$doc.Save($filename)
|
||||||
|
|
@ -0,0 +1,149 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# This file is a temporary workaround for internal builds to be able to restore from private AzDO feeds.
|
||||||
|
# This file should be removed as part of this issue: https://github.com/dotnet/arcade/issues/4080
|
||||||
|
#
|
||||||
|
# What the script does is iterate over all package sources in the pointed NuGet.config and add a credential entry
|
||||||
|
# under <packageSourceCredentials> for each Maestro's managed private feed. Two additional credential
|
||||||
|
# entries are also added for the two private static internal feeds: dotnet3-internal and dotnet3-internal-transport.
|
||||||
|
#
|
||||||
|
# This script needs to be called in every job that will restore packages and which the base repo has
|
||||||
|
# private AzDO feeds in the NuGet.config.
|
||||||
|
#
|
||||||
|
# See example YAML call for this script below. Note the use of the variable `$(dn-bot-dnceng-artifact-feeds-rw)`
|
||||||
|
# from the AzureDevOps-Artifact-Feeds-Pats variable group.
|
||||||
|
#
|
||||||
|
# - task: Bash@3
|
||||||
|
# displayName: Setup Private Feeds Credentials
|
||||||
|
# inputs:
|
||||||
|
# filePath: $(Build.SourcesDirectory)/eng/common/SetupNugetSources.sh
|
||||||
|
# arguments: $(Build.SourcesDirectory)/NuGet.config $Token
|
||||||
|
# condition: ne(variables['Agent.OS'], 'Windows_NT')
|
||||||
|
# env:
|
||||||
|
# Token: $(dn-bot-dnceng-artifact-feeds-rw)
|
||||||
|
|
||||||
|
ConfigFile=$1
|
||||||
|
CredToken=$2
|
||||||
|
NL='\n'
|
||||||
|
TB=' '
|
||||||
|
|
||||||
|
source="${BASH_SOURCE[0]}"
|
||||||
|
|
||||||
|
# resolve $source until the file is no longer a symlink
|
||||||
|
while [[ -h "$source" ]]; do
|
||||||
|
scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
|
||||||
|
source="$(readlink "$source")"
|
||||||
|
# if $source was a relative symlink, we need to resolve it relative to the path where the
|
||||||
|
# symlink file was located
|
||||||
|
[[ $source != /* ]] && source="$scriptroot/$source"
|
||||||
|
done
|
||||||
|
scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
|
||||||
|
|
||||||
|
. "$scriptroot/tools.sh"
|
||||||
|
|
||||||
|
if [ ! -f "$ConfigFile" ]; then
|
||||||
|
Write-PipelineTelemetryError -Category 'Build' "Error: Eng/common/SetupNugetSources.sh returned a non-zero exit code. Couldn't find the NuGet config file: $ConfigFile"
|
||||||
|
ExitWithExitCode 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$CredToken" ]; then
|
||||||
|
Write-PipelineTelemetryError -category 'Build' "Error: Eng/common/SetupNugetSources.sh returned a non-zero exit code. Please supply a valid PAT"
|
||||||
|
ExitWithExitCode 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ `uname -s` == "Darwin" ]]; then
|
||||||
|
NL=$'\\\n'
|
||||||
|
TB=''
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Ensure there is a <packageSources>...</packageSources> section.
|
||||||
|
grep -i "<packageSources>" $ConfigFile
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
echo "Adding <packageSources>...</packageSources> section."
|
||||||
|
ConfigNodeHeader="<configuration>"
|
||||||
|
PackageSourcesTemplate="${TB}<packageSources>${NL}${TB}</packageSources>"
|
||||||
|
|
||||||
|
sed -i.bak "s|$ConfigNodeHeader|$ConfigNodeHeader${NL}$PackageSourcesTemplate|" NuGet.config
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Ensure there is a <packageSourceCredentials>...</packageSourceCredentials> section.
|
||||||
|
grep -i "<packageSourceCredentials>" $ConfigFile
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
echo "Adding <packageSourceCredentials>...</packageSourceCredentials> section."
|
||||||
|
|
||||||
|
PackageSourcesNodeFooter="</packageSources>"
|
||||||
|
PackageSourceCredentialsTemplate="${TB}<packageSourceCredentials>${NL}${TB}</packageSourceCredentials>"
|
||||||
|
|
||||||
|
sed -i.bak "s|$PackageSourcesNodeFooter|$PackageSourcesNodeFooter${NL}$PackageSourceCredentialsTemplate|" NuGet.config
|
||||||
|
fi
|
||||||
|
|
||||||
|
PackageSources=()
|
||||||
|
|
||||||
|
# Ensure dotnet3-internal and dotnet3-internal-transport are in the packageSources if the public dotnet3 feeds are present
|
||||||
|
grep -i "<add key=\"dotnet3\"" $ConfigFile
|
||||||
|
|
||||||
|
if [ "$?" == "0" ]; then
|
||||||
|
grep -i "<add key=\"dotnet3-internal\">" $ConfigFile
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
echo "Adding dotnet3-internal to the packageSources."
|
||||||
|
PackageSourcesNodeFooter="</packageSources>"
|
||||||
|
PackageSourceTemplate="${TB}<add key=\"dotnet3-internal\" value=\"https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal/nuget/v2\" />"
|
||||||
|
|
||||||
|
sed -i.bak "s|$PackageSourcesNodeFooter|$PackageSourceTemplate${NL}$PackageSourcesNodeFooter|" $ConfigFile
|
||||||
|
fi
|
||||||
|
PackageSources+=('dotnet3-internal')
|
||||||
|
|
||||||
|
grep -i "<add key=\"dotnet3-internal-transport\"" $ConfigFile
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
echo "Adding dotnet3-internal-transport to the packageSources."
|
||||||
|
PackageSourcesNodeFooter="</packageSources>"
|
||||||
|
PackageSourceTemplate="${TB}<add key=\"dotnet3-internal-transport\" value=\"https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal-transport/nuget/v2\" />"
|
||||||
|
|
||||||
|
sed -i.bak "s|$PackageSourcesNodeFooter|$PackageSourceTemplate${NL}$PackageSourcesNodeFooter|" $ConfigFile
|
||||||
|
fi
|
||||||
|
PackageSources+=('dotnet3-internal-transport')
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Ensure dotnet3.1-internal and dotnet3.1-internal-transport are in the packageSources if the public dotnet3.1 feeds are present
|
||||||
|
grep -i "<add key=\"dotnet3.1\"" $ConfigFile
|
||||||
|
if [ "$?" == "0" ]; then
|
||||||
|
grep -i "<add key=\"dotnet3.1-internal\"" $ConfigFile
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
echo "Adding dotnet3.1-internal to the packageSources."
|
||||||
|
PackageSourcesNodeFooter="</packageSources>"
|
||||||
|
PackageSourceTemplate="${TB}<add key=\"dotnet3.1-internal\" value=\"https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal/nuget/v2\" />"
|
||||||
|
|
||||||
|
sed -i.bak "s|$PackageSourcesNodeFooter|$PackageSourceTemplate${NL}$PackageSourcesNodeFooter|" $ConfigFile
|
||||||
|
fi
|
||||||
|
PackageSources+=('dotnet3.1-internal')
|
||||||
|
|
||||||
|
grep -i "<add key=\"dotnet3.1-internal-transport\">" $ConfigFile
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
echo "Adding dotnet3.1-internal-transport to the packageSources."
|
||||||
|
PackageSourcesNodeFooter="</packageSources>"
|
||||||
|
PackageSourceTemplate="${TB}<add key=\"dotnet3.1-internal-transport\" value=\"https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal-transport/nuget/v2\" />"
|
||||||
|
|
||||||
|
sed -i.bak "s|$PackageSourcesNodeFooter|$PackageSourceTemplate${NL}$PackageSourcesNodeFooter|" $ConfigFile
|
||||||
|
fi
|
||||||
|
PackageSources+=('dotnet3.1-internal-transport')
|
||||||
|
fi
|
||||||
|
|
||||||
|
# I want things split line by line
|
||||||
|
PrevIFS=$IFS
|
||||||
|
IFS=$'\n'
|
||||||
|
PackageSources+="$IFS"
|
||||||
|
PackageSources+=$(grep -oh '"darc-int-[^"]*"' $ConfigFile | tr -d '"')
|
||||||
|
IFS=$PrevIFS
|
||||||
|
|
||||||
|
for FeedName in ${PackageSources[@]} ; do
|
||||||
|
# Check if there is no existing credential for this FeedName
|
||||||
|
grep -i "<$FeedName>" $ConfigFile
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
echo "Adding credentials for $FeedName."
|
||||||
|
|
||||||
|
PackageSourceCredentialsNodeFooter="</packageSourceCredentials>"
|
||||||
|
NewCredential="${TB}${TB}<$FeedName>${NL}<add key=\"Username\" value=\"dn-bot\" />${NL}<add key=\"ClearTextPassword\" value=\"$CredToken\" />${NL}</$FeedName>"
|
||||||
|
|
||||||
|
sed -i.bak "s|$PackageSourceCredentialsNodeFooter|$NewCredential${NL}$PackageSourceCredentialsNodeFooter|" $ConfigFile
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
@ -3,7 +3,9 @@ Param(
|
||||||
[string] $verbosity = "minimal",
|
[string] $verbosity = "minimal",
|
||||||
[string] $architecture = "",
|
[string] $architecture = "",
|
||||||
[string] $version = "Latest",
|
[string] $version = "Latest",
|
||||||
[string] $runtime = "dotnet"
|
[string] $runtime = "dotnet",
|
||||||
|
[string] $RuntimeSourceFeed = "",
|
||||||
|
[string] $RuntimeSourceFeedKey = ""
|
||||||
)
|
)
|
||||||
|
|
||||||
. $PSScriptRoot\tools.ps1
|
. $PSScriptRoot\tools.ps1
|
||||||
|
|
@ -15,7 +17,7 @@ try {
|
||||||
if ($architecture -and $architecture.Trim() -eq "x86") {
|
if ($architecture -and $architecture.Trim() -eq "x86") {
|
||||||
$installdir = Join-Path $installdir "x86"
|
$installdir = Join-Path $installdir "x86"
|
||||||
}
|
}
|
||||||
InstallDotNet $installdir $version $architecture $runtime $true
|
InstallDotNet $installdir $version $architecture $runtime $true -RuntimeSourceFeed $RuntimeSourceFeed -RuntimeSourceFeedKey $RuntimeSourceFeedKey
|
||||||
}
|
}
|
||||||
catch {
|
catch {
|
||||||
Write-Host $_
|
Write-Host $_
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,8 @@ scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
|
||||||
version='Latest'
|
version='Latest'
|
||||||
architecture=''
|
architecture=''
|
||||||
runtime='dotnet'
|
runtime='dotnet'
|
||||||
|
runtimeSourceFeed=''
|
||||||
|
runtimeSourceFeedKey=''
|
||||||
while [[ $# > 0 ]]; do
|
while [[ $# > 0 ]]; do
|
||||||
opt="$(echo "$1" | awk '{print tolower($0)}')"
|
opt="$(echo "$1" | awk '{print tolower($0)}')"
|
||||||
case "$opt" in
|
case "$opt" in
|
||||||
|
|
@ -29,9 +31,16 @@ while [[ $# > 0 ]]; do
|
||||||
shift
|
shift
|
||||||
runtime="$1"
|
runtime="$1"
|
||||||
;;
|
;;
|
||||||
|
-runtimesourcefeed)
|
||||||
|
shift
|
||||||
|
runtimeSourceFeed="$1"
|
||||||
|
;;
|
||||||
|
-runtimesourcefeedkey)
|
||||||
|
shift
|
||||||
|
runtimeSourceFeedKey="$1"
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
echo "Invalid argument: $1"
|
echo "Invalid argument: $1"
|
||||||
usage
|
|
||||||
exit 1
|
exit 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
@ -40,7 +49,7 @@ done
|
||||||
|
|
||||||
. "$scriptroot/tools.sh"
|
. "$scriptroot/tools.sh"
|
||||||
dotnetRoot="$repo_root/.dotnet"
|
dotnetRoot="$repo_root/.dotnet"
|
||||||
InstallDotNet $dotnetRoot $version "$architecture" $runtime true || {
|
InstallDotNet $dotnetRoot $version "$architecture" $runtime true $runtimeSourceFeed $runtimeSourceFeedKey || {
|
||||||
local exit_code=$?
|
local exit_code=$?
|
||||||
echo "dotnet-install.sh failed (exit code '$exit_code')." >&2
|
echo "dotnet-install.sh failed (exit code '$exit_code')." >&2
|
||||||
ExitWithExitCode $exit_code
|
ExitWithExitCode $exit_code
|
||||||
|
|
|
||||||
|
|
@ -6,12 +6,12 @@ param(
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$Content = Get-Content $ReleaseConfigsPath
|
$Content = Get-Content $ReleaseConfigsPath
|
||||||
|
|
||||||
$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
|
||||||
|
|
||||||
Write-PipelineSetVariable -Name 'BARBuildId' -Value $BarId
|
Write-PipelineSetVariable -Name 'BARBuildId' -Value $BarId
|
||||||
|
|
@ -23,4 +23,4 @@ catch {
|
||||||
Write-Host $_.Exception
|
Write-Host $_.Exception
|
||||||
Write-Host $_.ScriptStackTrace
|
Write-Host $_.ScriptStackTrace
|
||||||
ExitWithExitCode 1
|
ExitWithExitCode 1
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,11 @@ parameters:
|
||||||
# This can also be remedied by the caller (post-build.yml) if it does not use a nested parameter
|
# This can also be remedied by the caller (post-build.yml) if it does not use a nested parameter
|
||||||
sdlContinueOnError: false # optional: determines whether to continue the build if the step errors;
|
sdlContinueOnError: false # optional: determines whether to continue the build if the step errors;
|
||||||
dependsOn: '' # Optional: dependencies of the job
|
dependsOn: '' # Optional: dependencies of the job
|
||||||
|
artifactNames: '' # Optional: patterns supplied to DownloadBuildArtifacts
|
||||||
|
# Usage:
|
||||||
|
# artifactNames:
|
||||||
|
# - 'BlobArtifacts'
|
||||||
|
# - 'Artifacts_Windows_NT_Release'
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
- job: Run_SDL
|
- job: Run_SDL
|
||||||
|
|
@ -18,13 +23,22 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- checkout: self
|
- checkout: self
|
||||||
clean: true
|
clean: true
|
||||||
- task: DownloadBuildArtifacts@0
|
- ${{ if ne(parameters.artifactNames, '') }}:
|
||||||
displayName: Download Build Artifacts
|
- ${{ each artifactName in parameters.artifactNames }}:
|
||||||
inputs:
|
- task: DownloadBuildArtifacts@0
|
||||||
buildType: current
|
displayName: Download Build Artifacts
|
||||||
downloadType: specific files
|
inputs:
|
||||||
matchingPattern: "**"
|
buildType: current
|
||||||
downloadPath: $(Build.SourcesDirectory)\artifacts
|
artifactName: ${{ artifactName }}
|
||||||
|
downloadPath: $(Build.ArtifactStagingDirectory)\artifacts
|
||||||
|
- ${{ if eq(parameters.artifactNames, '') }}:
|
||||||
|
- task: DownloadBuildArtifacts@0
|
||||||
|
displayName: Download Build Artifacts
|
||||||
|
inputs:
|
||||||
|
buildType: current
|
||||||
|
downloadType: specific files
|
||||||
|
itemPattern: "**"
|
||||||
|
downloadPath: $(Build.ArtifactStagingDirectory)\artifacts
|
||||||
- powershell: eng/common/sdl/extract-artifact-packages.ps1
|
- powershell: eng/common/sdl/extract-artifact-packages.ps1
|
||||||
-InputPath $(Build.SourcesDirectory)\artifacts\BlobArtifacts
|
-InputPath $(Build.SourcesDirectory)\artifacts\BlobArtifacts
|
||||||
-ExtractPath $(Build.SourcesDirectory)\artifacts\BlobArtifacts
|
-ExtractPath $(Build.SourcesDirectory)\artifacts\BlobArtifacts
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,35 @@
|
||||||
parameters:
|
parameters:
|
||||||
|
publishInstallersAndChecksums: false
|
||||||
symbolPublishingAdditionalParameters: ''
|
symbolPublishingAdditionalParameters: ''
|
||||||
artifactsPublishingAdditionalParameters: ''
|
stageName: ''
|
||||||
|
channelName: ''
|
||||||
|
channelId: ''
|
||||||
|
transportFeed: ''
|
||||||
|
shippingFeed: ''
|
||||||
|
symbolsFeed: ''
|
||||||
|
|
||||||
stages:
|
stages:
|
||||||
- stage: NetCore_30_Internal_Servicing_Publishing
|
- stage: ${{ parameters.stageName }}
|
||||||
dependsOn: validate
|
dependsOn: validate
|
||||||
variables:
|
variables:
|
||||||
- template: ../common-variables.yml
|
- template: ../common-variables.yml
|
||||||
displayName: .NET Core 3.0 Internal Servicing Publishing
|
displayName: ${{ parameters.channelName }} Publishing
|
||||||
jobs:
|
jobs:
|
||||||
- template: ../setup-maestro-vars.yml
|
- template: ../setup-maestro-vars.yml
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
displayName: Symbol Publishing
|
displayName: Symbol Publishing
|
||||||
dependsOn: setupMaestroVars
|
dependsOn: setupMaestroVars
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.InternalServicing_30_Channel_Id))
|
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }} ))
|
||||||
variables:
|
variables:
|
||||||
- group: DotNet-Symbol-Server-Pats
|
- group: DotNet-Symbol-Server-Pats
|
||||||
pool:
|
pool:
|
||||||
vmImage: 'windows-2019'
|
vmImage: 'windows-2019'
|
||||||
steps:
|
steps:
|
||||||
|
# This is necessary whenever we want to publish/restore to an AzDO private feed
|
||||||
|
- task: NuGetAuthenticate@0
|
||||||
|
displayName: 'Authenticate to AzDO Feeds'
|
||||||
|
|
||||||
- task: DownloadBuildArtifacts@0
|
- task: DownloadBuildArtifacts@0
|
||||||
displayName: Download Blob Artifacts
|
displayName: Download Blob Artifacts
|
||||||
inputs:
|
inputs:
|
||||||
|
|
@ -55,7 +65,7 @@ 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}]', variables.InternalServicing_30_Channel_Id))
|
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }}))
|
||||||
pool:
|
pool:
|
||||||
vmImage: 'windows-2019'
|
vmImage: 'windows-2019'
|
||||||
steps:
|
steps:
|
||||||
|
|
@ -115,14 +125,15 @@ stages:
|
||||||
/p:InstallersTargetStaticFeed=$(InternalInstallersBlobFeedUrl)
|
/p:InstallersTargetStaticFeed=$(InternalInstallersBlobFeedUrl)
|
||||||
/p:InstallersAzureAccountKey=$(InternalInstallersBlobFeedKey)
|
/p:InstallersAzureAccountKey=$(InternalInstallersBlobFeedKey)
|
||||||
/p:PublishToAzureDevOpsNuGetFeeds=true
|
/p:PublishToAzureDevOpsNuGetFeeds=true
|
||||||
/p:AzureDevOpsStaticShippingFeed='https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal/nuget/v3/index.json'
|
/p:AzureDevOpsStaticShippingFeed='${{ parameters.shippingFeed }}'
|
||||||
/p:AzureDevOpsStaticShippingFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
/p:AzureDevOpsStaticShippingFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
||||||
/p:AzureDevOpsStaticTransportFeed='https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal-transport/nuget/v3/index.json'
|
/p:AzureDevOpsStaticTransportFeed='${{ parameters.transportFeed }}'
|
||||||
/p:AzureDevOpsStaticTransportFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
/p:AzureDevOpsStaticTransportFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
||||||
/p:AzureDevOpsStaticSymbolsFeed='https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal-symbols/nuget/v3/index.json'
|
/p:AzureDevOpsStaticSymbolsFeed='${{ parameters.symbolsFeed }}'
|
||||||
/p:AzureDevOpsStaticSymbolsFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
/p:AzureDevOpsStaticSymbolsFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
||||||
|
/p:PublishToMSDL=false
|
||||||
${{ parameters.artifactsPublishingAdditionalParameters }}
|
${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
|
||||||
- template: ../../steps/promote-build.yml
|
- template: ../../steps/promote-build.yml
|
||||||
parameters:
|
parameters:
|
||||||
ChannelId: ${{ variables.InternalServicing_30_Channel_Id }}
|
ChannelId: ${{ parameters.channelId }}
|
||||||
|
|
@ -1,21 +1,27 @@
|
||||||
parameters:
|
parameters:
|
||||||
symbolPublishingAdditionalParameters: ''
|
|
||||||
artifactsPublishingAdditionalParameters: ''
|
artifactsPublishingAdditionalParameters: ''
|
||||||
publishInstallersAndChecksums: false
|
publishInstallersAndChecksums: false
|
||||||
|
symbolPublishingAdditionalParameters: ''
|
||||||
|
stageName: ''
|
||||||
|
channelName: ''
|
||||||
|
channelId: ''
|
||||||
|
transportFeed: ''
|
||||||
|
shippingFeed: ''
|
||||||
|
symbolsFeed: ''
|
||||||
|
|
||||||
stages:
|
stages:
|
||||||
- stage: NetCore_Release31_Publish
|
- stage: ${{ parameters.stageName }}
|
||||||
dependsOn: validate
|
dependsOn: validate
|
||||||
variables:
|
variables:
|
||||||
- template: ../common-variables.yml
|
- template: ../common-variables.yml
|
||||||
displayName: .NET Core 3.1 Release Publishing
|
displayName: ${{ parameters.channelName }} Publishing
|
||||||
jobs:
|
jobs:
|
||||||
- template: ../setup-maestro-vars.yml
|
- template: ../setup-maestro-vars.yml
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
displayName: Symbol Publishing
|
displayName: Symbol Publishing
|
||||||
dependsOn: setupMaestroVars
|
dependsOn: setupMaestroVars
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.PublicRelease_31_Channel_Id))
|
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }} ))
|
||||||
variables:
|
variables:
|
||||||
- group: DotNet-Symbol-Server-Pats
|
- group: DotNet-Symbol-Server-Pats
|
||||||
pool:
|
pool:
|
||||||
|
|
@ -33,6 +39,18 @@ stages:
|
||||||
artifactName: 'PDBArtifacts'
|
artifactName: 'PDBArtifacts'
|
||||||
continueOnError: true
|
continueOnError: true
|
||||||
|
|
||||||
|
# This is necessary whenever we want to publish/restore to an AzDO private feed
|
||||||
|
# Since sdk-task.ps1 tries to restore packages we need to do this authentication here
|
||||||
|
# otherwise it'll complain about accessing a private feed.
|
||||||
|
- task: NuGetAuthenticate@0
|
||||||
|
displayName: 'Authenticate to AzDO Feeds'
|
||||||
|
|
||||||
|
- task: PowerShell@2
|
||||||
|
displayName: Enable cross-org publishing
|
||||||
|
inputs:
|
||||||
|
filePath: eng\common\enable-cross-org-publishing.ps1
|
||||||
|
arguments: -token $(dn-bot-dnceng-artifact-feeds-rw)
|
||||||
|
|
||||||
- task: PowerShell@2
|
- task: PowerShell@2
|
||||||
displayName: Publish
|
displayName: Publish
|
||||||
inputs:
|
inputs:
|
||||||
|
|
@ -50,13 +68,11 @@ stages:
|
||||||
displayName: Publish Assets
|
displayName: Publish Assets
|
||||||
dependsOn: setupMaestroVars
|
dependsOn: setupMaestroVars
|
||||||
variables:
|
variables:
|
||||||
- group: DotNet-Blob-Feed
|
|
||||||
- group: AzureDevOps-Artifact-Feeds-Pats
|
|
||||||
- name: BARBuildId
|
- name: BARBuildId
|
||||||
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}]', variables.PublicRelease_31_Channel_Id))
|
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', ${{ parameters.channelId }}))
|
||||||
pool:
|
pool:
|
||||||
vmImage: 'windows-2019'
|
vmImage: 'windows-2019'
|
||||||
steps:
|
steps:
|
||||||
|
|
@ -65,12 +81,14 @@ stages:
|
||||||
inputs:
|
inputs:
|
||||||
buildType: current
|
buildType: current
|
||||||
artifactName: PackageArtifacts
|
artifactName: PackageArtifacts
|
||||||
|
continueOnError: true
|
||||||
|
|
||||||
- task: DownloadBuildArtifacts@0
|
- task: DownloadBuildArtifacts@0
|
||||||
displayName: Download Blob Artifacts
|
displayName: Download Blob Artifacts
|
||||||
inputs:
|
inputs:
|
||||||
buildType: current
|
buildType: current
|
||||||
artifactName: BlobArtifacts
|
artifactName: BlobArtifacts
|
||||||
|
continueOnError: true
|
||||||
|
|
||||||
- task: DownloadBuildArtifacts@0
|
- task: DownloadBuildArtifacts@0
|
||||||
displayName: Download Asset Manifests
|
displayName: Download Asset Manifests
|
||||||
|
|
@ -117,14 +135,14 @@ stages:
|
||||||
/p:ChecksumsTargetStaticFeed=$(ChecksumsBlobFeedUrl)
|
/p:ChecksumsTargetStaticFeed=$(ChecksumsBlobFeedUrl)
|
||||||
/p:ChecksumsAzureAccountKey=$(dotnetclichecksums-storage-key)
|
/p:ChecksumsAzureAccountKey=$(dotnetclichecksums-storage-key)
|
||||||
/p:PublishToAzureDevOpsNuGetFeeds=true
|
/p:PublishToAzureDevOpsNuGetFeeds=true
|
||||||
/p:AzureDevOpsStaticShippingFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1/nuget/v3/index.json'
|
/p:AzureDevOpsStaticShippingFeed='${{ parameters.shippingFeed }}'
|
||||||
/p:AzureDevOpsStaticShippingFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
/p:AzureDevOpsStaticShippingFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
||||||
/p:AzureDevOpsStaticTransportFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-transport/nuget/v3/index.json'
|
/p:AzureDevOpsStaticTransportFeed='${{ parameters.transportFeed }}'
|
||||||
/p:AzureDevOpsStaticTransportFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
/p:AzureDevOpsStaticTransportFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
||||||
/p:AzureDevOpsStaticSymbolsFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-symbols/nuget/v3/index.json'
|
/p:AzureDevOpsStaticSymbolsFeed='${{ parameters.symbolsFeed }}'
|
||||||
/p:AzureDevOpsStaticSymbolsFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
/p:AzureDevOpsStaticSymbolsFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
||||||
${{ parameters.artifactsPublishingAdditionalParameters }}
|
${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
|
||||||
- template: ../../steps/promote-build.yml
|
- template: ../../steps/promote-build.yml
|
||||||
parameters:
|
parameters:
|
||||||
ChannelId: ${{ variables.PublicRelease_31_Channel_Id }}
|
ChannelId: ${{ parameters.channelId }}
|
||||||
|
|
@ -1,95 +0,0 @@
|
||||||
parameters:
|
|
||||||
artifactsPublishingAdditionalParameters: ''
|
|
||||||
publishInstallersAndChecksums: false
|
|
||||||
|
|
||||||
stages:
|
|
||||||
- stage: NetCore_3_Tools_Validation_Publish
|
|
||||||
dependsOn: validate
|
|
||||||
variables:
|
|
||||||
- template: ../common-variables.yml
|
|
||||||
displayName: .NET 3 Tools - Validation Publishing
|
|
||||||
jobs:
|
|
||||||
- template: ../setup-maestro-vars.yml
|
|
||||||
|
|
||||||
- job: publish_assets
|
|
||||||
displayName: Publish Assets
|
|
||||||
dependsOn: setupMaestroVars
|
|
||||||
variables:
|
|
||||||
- group: DotNet-Blob-Feed
|
|
||||||
- group: AzureDevOps-Artifact-Feeds-Pats
|
|
||||||
- name: BARBuildId
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
|
|
||||||
- name: IsStableBuild
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.IsStableBuild'] ]
|
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.NETCore_3_Tools_Validation_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: NuGetToolInstaller@1
|
|
||||||
displayName: 'Install NuGet.exe'
|
|
||||||
|
|
||||||
# This is necessary whenever we want to publish/restore to an AzDO private feed
|
|
||||||
- task: NuGetAuthenticate@0
|
|
||||||
displayName: 'Authenticate to AzDO Feeds'
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Enable cross-org publishing
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\enable-cross-org-publishing.ps1
|
|
||||||
arguments: -token $(dn-bot-dnceng-artifact-feeds-rw)
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Publish Assets
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\sdk-task.ps1
|
|
||||||
arguments: -task PublishArtifactsInManifest -restore -msbuildEngine dotnet
|
|
||||||
/p:ArtifactsCategory=$(_DotNetValidationArtifactsCategory)
|
|
||||||
/p:IsStableBuild=$(IsStableBuild)
|
|
||||||
/p:IsInternalBuild=$(IsInternalBuild)
|
|
||||||
/p:RepositoryName=$(Build.Repository.Name)
|
|
||||||
/p:CommitSha=$(Build.SourceVersion)
|
|
||||||
/p:NugetPath=$(NuGetExeToolPath)
|
|
||||||
/p:AzdoTargetFeedPAT='$(dn-bot-dnceng-universal-packages-rw)'
|
|
||||||
/p:AzureStorageTargetFeedPAT='$(dotnetfeed-storage-access-key-1)'
|
|
||||||
/p:BARBuildId=$(BARBuildId)
|
|
||||||
/p:MaestroApiEndpoint='$(MaestroApiEndPoint)'
|
|
||||||
/p:BuildAssetRegistryToken='$(MaestroApiAccessToken)'
|
|
||||||
/p:ManifestsBasePath='$(Build.ArtifactStagingDirectory)/AssetManifests/'
|
|
||||||
/p:BlobBasePath='$(Build.ArtifactStagingDirectory)/BlobArtifacts/'
|
|
||||||
/p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts/'
|
|
||||||
/p:Configuration=Release
|
|
||||||
/p:PublishInstallersAndChecksums=${{ parameters.publishInstallersAndChecksums }}
|
|
||||||
/p:InstallersTargetStaticFeed=$(InstallersBlobFeedUrl)
|
|
||||||
/p:InstallersAzureAccountKey=$(dotnetcli-storage-key)
|
|
||||||
/p:ChecksumsTargetStaticFeed=$(ChecksumsBlobFeedUrl)
|
|
||||||
/p:ChecksumsAzureAccountKey=$(dotnetclichecksums-storage-key)
|
|
||||||
/p:PublishToAzureDevOpsNuGetFeeds=true
|
|
||||||
/p:AzureDevOpsStaticShippingFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticShippingFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticTransportFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticTransportFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools-symbols/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
${{ parameters.artifactsPublishingAdditionalParameters }}
|
|
||||||
|
|
||||||
- template: ../../steps/promote-build.yml
|
|
||||||
parameters:
|
|
||||||
ChannelId: ${{ variables.NETCore_3_Tools_Validation_Channel_Id }}
|
|
||||||
|
|
@ -1,130 +0,0 @@
|
||||||
parameters:
|
|
||||||
symbolPublishingAdditionalParameters: ''
|
|
||||||
artifactsPublishingAdditionalParameters: ''
|
|
||||||
publishInstallersAndChecksums: false
|
|
||||||
|
|
||||||
stages:
|
|
||||||
- stage: NetCore_3_Tools_Publish
|
|
||||||
dependsOn: validate
|
|
||||||
variables:
|
|
||||||
- template: ../common-variables.yml
|
|
||||||
displayName: .NET 3 Tools Publishing
|
|
||||||
jobs:
|
|
||||||
- template: ../setup-maestro-vars.yml
|
|
||||||
|
|
||||||
- job:
|
|
||||||
displayName: Symbol Publishing
|
|
||||||
dependsOn: setupMaestroVars
|
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.NetCore_3_Tools_Channel_Id))
|
|
||||||
variables:
|
|
||||||
- group: DotNet-Symbol-Server-Pats
|
|
||||||
pool:
|
|
||||||
vmImage: 'windows-2019'
|
|
||||||
steps:
|
|
||||||
- task: DownloadBuildArtifacts@0
|
|
||||||
displayName: Download Blob Artifacts
|
|
||||||
inputs:
|
|
||||||
artifactName: 'BlobArtifacts'
|
|
||||||
continueOnError: true
|
|
||||||
|
|
||||||
- task: DownloadBuildArtifacts@0
|
|
||||||
displayName: Download PDB Artifacts
|
|
||||||
inputs:
|
|
||||||
artifactName: 'PDBArtifacts'
|
|
||||||
continueOnError: true
|
|
||||||
|
|
||||||
- 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:SymbolPublishingExclusionsFile='$(Build.SourcesDirectory)/eng/SymbolPublishingExclusionsFile.txt'
|
|
||||||
/p:Configuration=Release
|
|
||||||
${{ parameters.symbolPublishingAdditionalParameters }}
|
|
||||||
|
|
||||||
- job: publish_assets
|
|
||||||
displayName: Publish Assets
|
|
||||||
dependsOn: setupMaestroVars
|
|
||||||
variables:
|
|
||||||
- group: DotNet-Blob-Feed
|
|
||||||
- group: AzureDevOps-Artifact-Feeds-Pats
|
|
||||||
- name: BARBuildId
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
|
|
||||||
- name: IsStableBuild
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.IsStableBuild'] ]
|
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.NetCore_3_Tools_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: NuGetToolInstaller@1
|
|
||||||
displayName: 'Install NuGet.exe'
|
|
||||||
|
|
||||||
# This is necessary whenever we want to publish/restore to an AzDO private feed
|
|
||||||
- task: NuGetAuthenticate@0
|
|
||||||
displayName: 'Authenticate to AzDO Feeds'
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Enable cross-org publishing
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\enable-cross-org-publishing.ps1
|
|
||||||
arguments: -token $(dn-bot-dnceng-artifact-feeds-rw)
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Publish Assets
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\sdk-task.ps1
|
|
||||||
arguments: -task PublishArtifactsInManifest -restore -msbuildEngine dotnet
|
|
||||||
/p:ArtifactsCategory=$(_DotNetArtifactsCategory)
|
|
||||||
/p:IsStableBuild=$(IsStableBuild)
|
|
||||||
/p:IsInternalBuild=$(IsInternalBuild)
|
|
||||||
/p:RepositoryName=$(Build.Repository.Name)
|
|
||||||
/p:CommitSha=$(Build.SourceVersion)
|
|
||||||
/p:NugetPath=$(NuGetExeToolPath)
|
|
||||||
/p:AzdoTargetFeedPAT='$(dn-bot-dnceng-universal-packages-rw)'
|
|
||||||
/p:AzureStorageTargetFeedPAT='$(dotnetfeed-storage-access-key-1)'
|
|
||||||
/p:BARBuildId=$(BARBuildId)
|
|
||||||
/p:MaestroApiEndpoint='$(MaestroApiEndPoint)'
|
|
||||||
/p:BuildAssetRegistryToken='$(MaestroApiAccessToken)'
|
|
||||||
/p:ManifestsBasePath='$(Build.ArtifactStagingDirectory)/AssetManifests/'
|
|
||||||
/p:BlobBasePath='$(Build.ArtifactStagingDirectory)/BlobArtifacts/'
|
|
||||||
/p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts/'
|
|
||||||
/p:Configuration=Release
|
|
||||||
/p:PublishInstallersAndChecksums=${{ parameters.publishInstallersAndChecksums }}
|
|
||||||
/p:InstallersTargetStaticFeed=$(InstallersBlobFeedUrl)
|
|
||||||
/p:InstallersAzureAccountKey=$(dotnetcli-storage-key)
|
|
||||||
/p:ChecksumsTargetStaticFeed=$(ChecksumsBlobFeedUrl)
|
|
||||||
/p:ChecksumsAzureAccountKey=$(dotnetclichecksums-storage-key)
|
|
||||||
/p:PublishToAzureDevOpsNuGetFeeds=true
|
|
||||||
/p:AzureDevOpsStaticShippingFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticShippingFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticTransportFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticTransportFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools-symbols/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
${{ parameters.artifactsPublishingAdditionalParameters }}
|
|
||||||
|
|
||||||
- template: ../../steps/promote-build.yml
|
|
||||||
parameters:
|
|
||||||
ChannelId: ${{ variables.NetCore_3_Tools_Channel_Id }}
|
|
||||||
|
|
@ -1,130 +0,0 @@
|
||||||
parameters:
|
|
||||||
symbolPublishingAdditionalParameters: ''
|
|
||||||
artifactsPublishingAdditionalParameters: ''
|
|
||||||
publishInstallersAndChecksums: false
|
|
||||||
|
|
||||||
stages:
|
|
||||||
- stage: NetCore_Dev31_Publish
|
|
||||||
dependsOn: validate
|
|
||||||
variables:
|
|
||||||
- template: ../common-variables.yml
|
|
||||||
displayName: .NET Core 3.1 Dev Publishing
|
|
||||||
jobs:
|
|
||||||
- template: ../setup-maestro-vars.yml
|
|
||||||
|
|
||||||
- job:
|
|
||||||
displayName: Symbol Publishing
|
|
||||||
dependsOn: setupMaestroVars
|
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.PublicDevRelease_31_Channel_Id))
|
|
||||||
variables:
|
|
||||||
- group: DotNet-Symbol-Server-Pats
|
|
||||||
pool:
|
|
||||||
vmImage: 'windows-2019'
|
|
||||||
steps:
|
|
||||||
- task: DownloadBuildArtifacts@0
|
|
||||||
displayName: Download Blob Artifacts
|
|
||||||
inputs:
|
|
||||||
artifactName: 'BlobArtifacts'
|
|
||||||
continueOnError: true
|
|
||||||
|
|
||||||
- task: DownloadBuildArtifacts@0
|
|
||||||
displayName: Download PDB Artifacts
|
|
||||||
inputs:
|
|
||||||
artifactName: 'PDBArtifacts'
|
|
||||||
continueOnError: true
|
|
||||||
|
|
||||||
- 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:SymbolPublishingExclusionsFile='$(Build.SourcesDirectory)/eng/SymbolPublishingExclusionsFile.txt'
|
|
||||||
/p:Configuration=Release
|
|
||||||
${{ parameters.symbolPublishingAdditionalParameters }}
|
|
||||||
|
|
||||||
- job: publish_assets
|
|
||||||
displayName: Publish Assets
|
|
||||||
dependsOn: setupMaestroVars
|
|
||||||
variables:
|
|
||||||
- group: DotNet-Blob-Feed
|
|
||||||
- group: AzureDevOps-Artifact-Feeds-Pats
|
|
||||||
- name: BARBuildId
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
|
|
||||||
- name: IsStableBuild
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.IsStableBuild'] ]
|
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.PublicDevRelease_31_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: NuGetToolInstaller@1
|
|
||||||
displayName: 'Install NuGet.exe'
|
|
||||||
|
|
||||||
# This is necessary whenever we want to publish/restore to an AzDO private feed
|
|
||||||
- task: NuGetAuthenticate@0
|
|
||||||
displayName: 'Authenticate to AzDO Feeds'
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Enable cross-org publishing
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\enable-cross-org-publishing.ps1
|
|
||||||
arguments: -token $(dn-bot-dnceng-artifact-feeds-rw)
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Publish Assets
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\sdk-task.ps1
|
|
||||||
arguments: -task PublishArtifactsInManifest -restore -msbuildEngine dotnet
|
|
||||||
/p:ArtifactsCategory=$(_DotNetArtifactsCategory)
|
|
||||||
/p:IsStableBuild=$(IsStableBuild)
|
|
||||||
/p:IsInternalBuild=$(IsInternalBuild)
|
|
||||||
/p:RepositoryName=$(Build.Repository.Name)
|
|
||||||
/p:CommitSha=$(Build.SourceVersion)
|
|
||||||
/p:NugetPath=$(NuGetExeToolPath)
|
|
||||||
/p:AzdoTargetFeedPAT='$(dn-bot-dnceng-universal-packages-rw)'
|
|
||||||
/p:AzureStorageTargetFeedPAT='$(dotnetfeed-storage-access-key-1)'
|
|
||||||
/p:BARBuildId=$(BARBuildId)
|
|
||||||
/p:MaestroApiEndpoint='$(MaestroApiEndPoint)'
|
|
||||||
/p:BuildAssetRegistryToken='$(MaestroApiAccessToken)'
|
|
||||||
/p:ManifestsBasePath='$(Build.ArtifactStagingDirectory)/AssetManifests/'
|
|
||||||
/p:BlobBasePath='$(Build.ArtifactStagingDirectory)/BlobArtifacts/'
|
|
||||||
/p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts/'
|
|
||||||
/p:Configuration=Release
|
|
||||||
/p:PublishInstallersAndChecksums=${{ parameters.publishInstallersAndChecksums }}
|
|
||||||
/p:InstallersTargetStaticFeed=$(InstallersBlobFeedUrl)
|
|
||||||
/p:InstallersAzureAccountKey=$(dotnetcli-storage-key)
|
|
||||||
/p:ChecksumsTargetStaticFeed=$(ChecksumsBlobFeedUrl)
|
|
||||||
/p:ChecksumsAzureAccountKey=$(dotnetclichecksums-storage-key)
|
|
||||||
/p:PublishToAzureDevOpsNuGetFeeds=true
|
|
||||||
/p:AzureDevOpsStaticShippingFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticShippingFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticTransportFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-transport/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticTransportFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-symbols/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
${{ parameters.artifactsPublishingAdditionalParameters }}
|
|
||||||
|
|
||||||
- template: ../../steps/promote-build.yml
|
|
||||||
parameters:
|
|
||||||
ChannelId: ${{ variables.PublicDevRelease_31_Channel_Id }}
|
|
||||||
|
|
@ -1,130 +0,0 @@
|
||||||
parameters:
|
|
||||||
symbolPublishingAdditionalParameters: ''
|
|
||||||
artifactsPublishingAdditionalParameters: ''
|
|
||||||
publishInstallersAndChecksums: false
|
|
||||||
|
|
||||||
stages:
|
|
||||||
- stage: NetCore_Dev5_Publish
|
|
||||||
dependsOn: validate
|
|
||||||
variables:
|
|
||||||
- template: ../common-variables.yml
|
|
||||||
displayName: .NET Core 5 Dev Publishing
|
|
||||||
jobs:
|
|
||||||
- template: ../setup-maestro-vars.yml
|
|
||||||
|
|
||||||
- job:
|
|
||||||
displayName: Symbol Publishing
|
|
||||||
dependsOn: setupMaestroVars
|
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.NetCore_5_Dev_Channel_Id))
|
|
||||||
variables:
|
|
||||||
- group: DotNet-Symbol-Server-Pats
|
|
||||||
pool:
|
|
||||||
vmImage: 'windows-2019'
|
|
||||||
steps:
|
|
||||||
- task: DownloadBuildArtifacts@0
|
|
||||||
displayName: Download Blob Artifacts
|
|
||||||
inputs:
|
|
||||||
artifactName: 'BlobArtifacts'
|
|
||||||
continueOnError: true
|
|
||||||
|
|
||||||
- task: DownloadBuildArtifacts@0
|
|
||||||
displayName: Download PDB Artifacts
|
|
||||||
inputs:
|
|
||||||
artifactName: 'PDBArtifacts'
|
|
||||||
continueOnError: true
|
|
||||||
|
|
||||||
- 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:SymbolPublishingExclusionsFile='$(Build.SourcesDirectory)/eng/SymbolPublishingExclusionsFile.txt'
|
|
||||||
/p:Configuration=Release
|
|
||||||
${{ parameters.symbolPublishingAdditionalParameters }}
|
|
||||||
|
|
||||||
- job: publish_assets
|
|
||||||
displayName: Publish Assets
|
|
||||||
dependsOn: setupMaestroVars
|
|
||||||
variables:
|
|
||||||
- group: DotNet-Blob-Feed
|
|
||||||
- group: AzureDevOps-Artifact-Feeds-Pats
|
|
||||||
- name: BARBuildId
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
|
|
||||||
- name: IsStableBuild
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.IsStableBuild'] ]
|
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.NetCore_5_Dev_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: NuGetToolInstaller@1
|
|
||||||
displayName: 'Install NuGet.exe'
|
|
||||||
|
|
||||||
# This is necessary whenever we want to publish/restore to an AzDO private feed
|
|
||||||
- task: NuGetAuthenticate@0
|
|
||||||
displayName: 'Authenticate to AzDO Feeds'
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Enable cross-org publishing
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\enable-cross-org-publishing.ps1
|
|
||||||
arguments: -token $(dn-bot-dnceng-artifact-feeds-rw)
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Publish Assets
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\sdk-task.ps1
|
|
||||||
arguments: -task PublishArtifactsInManifest -restore -msbuildEngine dotnet
|
|
||||||
/p:ArtifactsCategory=$(_DotNetArtifactsCategory)
|
|
||||||
/p:IsStableBuild=$(IsStableBuild)
|
|
||||||
/p:IsInternalBuild=$(IsInternalBuild)
|
|
||||||
/p:RepositoryName=$(Build.Repository.Name)
|
|
||||||
/p:CommitSha=$(Build.SourceVersion)
|
|
||||||
/p:NugetPath=$(NuGetExeToolPath)
|
|
||||||
/p:AzdoTargetFeedPAT='$(dn-bot-dnceng-universal-packages-rw)'
|
|
||||||
/p:AzureStorageTargetFeedPAT='$(dotnetfeed-storage-access-key-1)'
|
|
||||||
/p:BARBuildId=$(BARBuildId)
|
|
||||||
/p:MaestroApiEndpoint='$(MaestroApiEndPoint)'
|
|
||||||
/p:BuildAssetRegistryToken='$(MaestroApiAccessToken)'
|
|
||||||
/p:ManifestsBasePath='$(Build.ArtifactStagingDirectory)/AssetManifests/'
|
|
||||||
/p:BlobBasePath='$(Build.ArtifactStagingDirectory)/BlobArtifacts/'
|
|
||||||
/p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts/'
|
|
||||||
/p:Configuration=Release
|
|
||||||
/p:PublishInstallersAndChecksums=${{ parameters.publishInstallersAndChecksums }}
|
|
||||||
/p:InstallersTargetStaticFeed=$(InstallersBlobFeedUrl)
|
|
||||||
/p:InstallersAzureAccountKey=$(dotnetcli-storage-key)
|
|
||||||
/p:ChecksumsTargetStaticFeed=$(ChecksumsBlobFeedUrl)
|
|
||||||
/p:ChecksumsAzureAccountKey=$(dotnetclichecksums-storage-key)
|
|
||||||
/p:PublishToAzureDevOpsNuGetFeeds=true
|
|
||||||
/p:AzureDevOpsStaticShippingFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticShippingFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticTransportFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5-transport/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticTransportFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5-symbols/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
${{ parameters.artifactsPublishingAdditionalParameters }}
|
|
||||||
|
|
||||||
- template: ../../steps/promote-build.yml
|
|
||||||
parameters:
|
|
||||||
ChannelId: ${{ variables.NetCore_5_Dev_Channel_Id }}
|
|
||||||
|
|
@ -1,130 +0,0 @@
|
||||||
parameters:
|
|
||||||
symbolPublishingAdditionalParameters: ''
|
|
||||||
artifactsPublishingAdditionalParameters: ''
|
|
||||||
publishInstallersAndChecksums: false
|
|
||||||
|
|
||||||
stages:
|
|
||||||
- stage: NetCore_Release30_Publish
|
|
||||||
dependsOn: validate
|
|
||||||
variables:
|
|
||||||
- template: ../common-variables.yml
|
|
||||||
displayName: .NET Core 3.0 Release Publishing
|
|
||||||
jobs:
|
|
||||||
- template: ../setup-maestro-vars.yml
|
|
||||||
|
|
||||||
- job:
|
|
||||||
displayName: Symbol Publishing
|
|
||||||
dependsOn: setupMaestroVars
|
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.PublicRelease_30_Channel_Id))
|
|
||||||
variables:
|
|
||||||
- group: DotNet-Symbol-Server-Pats
|
|
||||||
pool:
|
|
||||||
vmImage: 'windows-2019'
|
|
||||||
steps:
|
|
||||||
- task: DownloadBuildArtifacts@0
|
|
||||||
displayName: Download Blob Artifacts
|
|
||||||
inputs:
|
|
||||||
artifactName: 'BlobArtifacts'
|
|
||||||
continueOnError: true
|
|
||||||
|
|
||||||
- task: DownloadBuildArtifacts@0
|
|
||||||
displayName: Download PDB Artifacts
|
|
||||||
inputs:
|
|
||||||
artifactName: 'PDBArtifacts'
|
|
||||||
continueOnError: true
|
|
||||||
|
|
||||||
- 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:SymbolPublishingExclusionsFile='$(Build.SourcesDirectory)/eng/SymbolPublishingExclusionsFile.txt'
|
|
||||||
/p:Configuration=Release
|
|
||||||
${{ parameters.symbolPublishingAdditionalParameters }}
|
|
||||||
|
|
||||||
- job: publish_assets
|
|
||||||
displayName: Publish Assets
|
|
||||||
dependsOn: setupMaestroVars
|
|
||||||
variables:
|
|
||||||
- group: DotNet-Blob-Feed
|
|
||||||
- group: AzureDevOps-Artifact-Feeds-Pats
|
|
||||||
- name: BARBuildId
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
|
|
||||||
- name: IsStableBuild
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.IsStableBuild'] ]
|
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.PublicRelease_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: NuGetToolInstaller@1
|
|
||||||
displayName: 'Install NuGet.exe'
|
|
||||||
|
|
||||||
# This is necessary whenever we want to publish/restore to an AzDO private feed
|
|
||||||
- task: NuGetAuthenticate@0
|
|
||||||
displayName: 'Authenticate to AzDO Feeds'
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Enable cross-org publishing
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\enable-cross-org-publishing.ps1
|
|
||||||
arguments: -token $(dn-bot-dnceng-artifact-feeds-rw)
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Publish Assets
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\sdk-task.ps1
|
|
||||||
arguments: -task PublishArtifactsInManifest -restore -msbuildEngine dotnet
|
|
||||||
/p:ArtifactsCategory=$(_DotNetArtifactsCategory)
|
|
||||||
/p:IsStableBuild=$(IsStableBuild)
|
|
||||||
/p:IsInternalBuild=$(IsInternalBuild)
|
|
||||||
/p:RepositoryName=$(Build.Repository.Name)
|
|
||||||
/p:CommitSha=$(Build.SourceVersion)
|
|
||||||
/p:NugetPath=$(NuGetExeToolPath)
|
|
||||||
/p:AzdoTargetFeedPAT='$(dn-bot-dnceng-universal-packages-rw)'
|
|
||||||
/p:AzureStorageTargetFeedPAT='$(dotnetfeed-storage-access-key-1)'
|
|
||||||
/p:BARBuildId=$(BARBuildId)
|
|
||||||
/p:MaestroApiEndpoint='$(MaestroApiEndPoint)'
|
|
||||||
/p:BuildAssetRegistryToken='$(MaestroApiAccessToken)'
|
|
||||||
/p:ManifestsBasePath='$(Build.ArtifactStagingDirectory)/AssetManifests/'
|
|
||||||
/p:BlobBasePath='$(Build.ArtifactStagingDirectory)/BlobArtifacts/'
|
|
||||||
/p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts/'
|
|
||||||
/p:Configuration=Release
|
|
||||||
/p:PublishInstallersAndChecksums=${{ parameters.publishInstallersAndChecksums }}
|
|
||||||
/p:InstallersTargetStaticFeed=$(InstallersBlobFeedUrl)
|
|
||||||
/p:InstallersAzureAccountKey=$(dotnetcli-storage-key)
|
|
||||||
/p:ChecksumsTargetStaticFeed=$(ChecksumsBlobFeedUrl)
|
|
||||||
/p:ChecksumsAzureAccountKey=$(dotnetclichecksums-storage-key)
|
|
||||||
/p:PublishToAzureDevOpsNuGetFeeds=true
|
|
||||||
/p:AzureDevOpsStaticShippingFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticShippingFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticTransportFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3-transport/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticTransportFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3-symbols/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
${{ parameters.artifactsPublishingAdditionalParameters }}
|
|
||||||
|
|
||||||
- template: ../../steps/promote-build.yml
|
|
||||||
parameters:
|
|
||||||
ChannelId: ${{ variables.PublicRelease_30_Channel_Id }}
|
|
||||||
|
|
@ -1,130 +0,0 @@
|
||||||
parameters:
|
|
||||||
symbolPublishingAdditionalParameters: ''
|
|
||||||
artifactsPublishingAdditionalParameters: ''
|
|
||||||
publishInstallersAndChecksums: false
|
|
||||||
|
|
||||||
stages:
|
|
||||||
- stage: NetCore_Tools_Latest_Publish
|
|
||||||
dependsOn: validate
|
|
||||||
variables:
|
|
||||||
- template: ../common-variables.yml
|
|
||||||
displayName: .NET Tools - Latest Publishing
|
|
||||||
jobs:
|
|
||||||
- template: ../setup-maestro-vars.yml
|
|
||||||
|
|
||||||
- job:
|
|
||||||
displayName: Symbol Publishing
|
|
||||||
dependsOn: setupMaestroVars
|
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.NetCore_Tools_Latest_Channel_Id))
|
|
||||||
variables:
|
|
||||||
- group: DotNet-Symbol-Server-Pats
|
|
||||||
pool:
|
|
||||||
vmImage: 'windows-2019'
|
|
||||||
steps:
|
|
||||||
- task: DownloadBuildArtifacts@0
|
|
||||||
displayName: Download Blob Artifacts
|
|
||||||
inputs:
|
|
||||||
artifactName: 'BlobArtifacts'
|
|
||||||
continueOnError: true
|
|
||||||
|
|
||||||
- task: DownloadBuildArtifacts@0
|
|
||||||
displayName: Download PDB Artifacts
|
|
||||||
inputs:
|
|
||||||
artifactName: 'PDBArtifacts'
|
|
||||||
continueOnError: true
|
|
||||||
|
|
||||||
- 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:SymbolPublishingExclusionsFile='$(Build.SourcesDirectory)/eng/SymbolPublishingExclusionsFile.txt'
|
|
||||||
/p:Configuration=Release
|
|
||||||
${{ parameters.symbolPublishingAdditionalParameters }}
|
|
||||||
|
|
||||||
- job: publish_assets
|
|
||||||
displayName: Publish Assets
|
|
||||||
dependsOn: setupMaestroVars
|
|
||||||
variables:
|
|
||||||
- group: DotNet-Blob-Feed
|
|
||||||
- group: AzureDevOps-Artifact-Feeds-Pats
|
|
||||||
- name: BARBuildId
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
|
|
||||||
- name: IsStableBuild
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.IsStableBuild'] ]
|
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.NetCore_Tools_Latest_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: NuGetToolInstaller@1
|
|
||||||
displayName: 'Install NuGet.exe'
|
|
||||||
|
|
||||||
# This is necessary whenever we want to publish/restore to an AzDO private feed
|
|
||||||
- task: NuGetAuthenticate@0
|
|
||||||
displayName: 'Authenticate to AzDO Feeds'
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Enable cross-org publishing
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\enable-cross-org-publishing.ps1
|
|
||||||
arguments: -token $(dn-bot-dnceng-artifact-feeds-rw)
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Publish Assets
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\sdk-task.ps1
|
|
||||||
arguments: -task PublishArtifactsInManifest -restore -msbuildEngine dotnet
|
|
||||||
/p:ArtifactsCategory=$(_DotNetArtifactsCategory)
|
|
||||||
/p:IsStableBuild=$(IsStableBuild)
|
|
||||||
/p:IsInternalBuild=$(IsInternalBuild)
|
|
||||||
/p:RepositoryName=$(Build.Repository.Name)
|
|
||||||
/p:CommitSha=$(Build.SourceVersion)
|
|
||||||
/p:NugetPath=$(NuGetExeToolPath)
|
|
||||||
/p:AzdoTargetFeedPAT='$(dn-bot-dnceng-universal-packages-rw)'
|
|
||||||
/p:AzureStorageTargetFeedPAT='$(dotnetfeed-storage-access-key-1)'
|
|
||||||
/p:BARBuildId=$(BARBuildId)
|
|
||||||
/p:MaestroApiEndpoint='$(MaestroApiEndPoint)'
|
|
||||||
/p:BuildAssetRegistryToken='$(MaestroApiAccessToken)'
|
|
||||||
/p:ManifestsBasePath='$(Build.ArtifactStagingDirectory)/AssetManifests/'
|
|
||||||
/p:BlobBasePath='$(Build.ArtifactStagingDirectory)/BlobArtifacts/'
|
|
||||||
/p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts/'
|
|
||||||
/p:Configuration=Release
|
|
||||||
/p:PublishInstallersAndChecksums=${{ parameters.publishInstallersAndChecksums }}
|
|
||||||
/p:InstallersTargetStaticFeed=$(InstallersBlobFeedUrl)
|
|
||||||
/p:InstallersAzureAccountKey=$(dotnetcli-storage-key)
|
|
||||||
/p:ChecksumsTargetStaticFeed=$(ChecksumsBlobFeedUrl)
|
|
||||||
/p:ChecksumsAzureAccountKey=$(dotnetclichecksums-storage-key)
|
|
||||||
/p:PublishToAzureDevOpsNuGetFeeds=true
|
|
||||||
/p:AzureDevOpsStaticShippingFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticShippingFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticTransportFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticTransportFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools-symbols/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
${{ parameters.artifactsPublishingAdditionalParameters }}
|
|
||||||
|
|
||||||
- template: ../../steps/promote-build.yml
|
|
||||||
parameters:
|
|
||||||
ChannelId: ${{ variables.NetCore_Tools_Latest_Channel_Id }}
|
|
||||||
|
|
@ -1,95 +0,0 @@
|
||||||
parameters:
|
|
||||||
artifactsPublishingAdditionalParameters: ''
|
|
||||||
publishInstallersAndChecksums: false
|
|
||||||
|
|
||||||
stages:
|
|
||||||
- stage: PVR_Publish
|
|
||||||
dependsOn: validate
|
|
||||||
variables:
|
|
||||||
- template: ../common-variables.yml
|
|
||||||
displayName: .NET Tools - Validation Publishing
|
|
||||||
jobs:
|
|
||||||
- template: ../setup-maestro-vars.yml
|
|
||||||
|
|
||||||
- job: publish_assets
|
|
||||||
displayName: Publish Assets
|
|
||||||
dependsOn: setupMaestroVars
|
|
||||||
variables:
|
|
||||||
- group: DotNet-Blob-Feed
|
|
||||||
- group: AzureDevOps-Artifact-Feeds-Pats
|
|
||||||
- name: BARBuildId
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
|
|
||||||
- name: IsStableBuild
|
|
||||||
value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.IsStableBuild'] ]
|
|
||||||
condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], format('[{0}]', variables.NetCore_Tools_Validation_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: NuGetToolInstaller@1
|
|
||||||
displayName: 'Install NuGet.exe'
|
|
||||||
|
|
||||||
# This is necessary whenever we want to publish/restore to an AzDO private feed
|
|
||||||
- task: NuGetAuthenticate@0
|
|
||||||
displayName: 'Authenticate to AzDO Feeds'
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Enable cross-org publishing
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\enable-cross-org-publishing.ps1
|
|
||||||
arguments: -token $(dn-bot-dnceng-artifact-feeds-rw)
|
|
||||||
|
|
||||||
- task: PowerShell@2
|
|
||||||
displayName: Publish Assets
|
|
||||||
inputs:
|
|
||||||
filePath: eng\common\sdk-task.ps1
|
|
||||||
arguments: -task PublishArtifactsInManifest -restore -msbuildEngine dotnet
|
|
||||||
/p:ArtifactsCategory=$(_DotNetValidationArtifactsCategory)
|
|
||||||
/p:IsStableBuild=$(IsStableBuild)
|
|
||||||
/p:IsInternalBuild=$(IsInternalBuild)
|
|
||||||
/p:RepositoryName=$(Build.Repository.Name)
|
|
||||||
/p:CommitSha=$(Build.SourceVersion)
|
|
||||||
/p:NugetPath=$(NuGetExeToolPath)
|
|
||||||
/p:AzdoTargetFeedPAT='$(dn-bot-dnceng-universal-packages-rw)'
|
|
||||||
/p:AzureStorageTargetFeedPAT='$(dotnetfeed-storage-access-key-1)'
|
|
||||||
/p:BARBuildId=$(BARBuildId)
|
|
||||||
/p:MaestroApiEndpoint='$(MaestroApiEndPoint)'
|
|
||||||
/p:BuildAssetRegistryToken='$(MaestroApiAccessToken)'
|
|
||||||
/p:ManifestsBasePath='$(Build.ArtifactStagingDirectory)/AssetManifests/'
|
|
||||||
/p:BlobBasePath='$(Build.ArtifactStagingDirectory)/BlobArtifacts/'
|
|
||||||
/p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts/'
|
|
||||||
/p:Configuration=Release
|
|
||||||
/p:PublishInstallersAndChecksums=${{ parameters.publishInstallersAndChecksums }}
|
|
||||||
/p:InstallersTargetStaticFeed=$(InstallersBlobFeedUrl)
|
|
||||||
/p:InstallersAzureAccountKey=$(dotnetcli-storage-key)
|
|
||||||
/p:ChecksumsTargetStaticFeed=$(ChecksumsBlobFeedUrl)
|
|
||||||
/p:ChecksumsAzureAccountKey=$(dotnetclichecksums-storage-key)
|
|
||||||
/p:PublishToAzureDevOpsNuGetFeeds=true
|
|
||||||
/p:AzureDevOpsStaticShippingFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticShippingFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticTransportFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticTransportFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeed='https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools-symbols/nuget/v3/index.json'
|
|
||||||
/p:AzureDevOpsStaticSymbolsFeedKey='$(dn-bot-dnceng-artifact-feeds-rw)'
|
|
||||||
${{ parameters.artifactsPublishingAdditionalParameters }}
|
|
||||||
|
|
||||||
- template: ../../steps/promote-build.yml
|
|
||||||
parameters:
|
|
||||||
ChannelId: ${{ variables.NetCore_Tools_Validation_Channel_Id }}
|
|
||||||
|
|
@ -1,7 +1,9 @@
|
||||||
variables:
|
variables:
|
||||||
- group: Publish-Build-Assets
|
- group: AzureDevOps-Artifact-Feeds-Pats
|
||||||
|
- group: DotNet-Blob-Feed
|
||||||
- group: DotNet-DotNetCli-Storage
|
- group: DotNet-DotNetCli-Storage
|
||||||
- group: DotNet-MSRC-Storage
|
- group: DotNet-MSRC-Storage
|
||||||
|
- group: Publish-Build-Assets
|
||||||
|
|
||||||
# .NET Core 3.1 Dev
|
# .NET Core 3.1 Dev
|
||||||
- name: PublicDevRelease_31_Channel_Id
|
- name: PublicDevRelease_31_Channel_Id
|
||||||
|
|
@ -11,19 +13,19 @@ variables:
|
||||||
- name: NetCore_5_Dev_Channel_Id
|
- name: NetCore_5_Dev_Channel_Id
|
||||||
value: 131
|
value: 131
|
||||||
|
|
||||||
# .NET Tools - Validation
|
# .NET Eng - Validation
|
||||||
- name: NetCore_Tools_Validation_Channel_Id
|
- name: Net_Eng_Validation_Channel_Id
|
||||||
value: 9
|
value: 9
|
||||||
|
|
||||||
# .NET Tools - Latest
|
# .NET Eng - Latest
|
||||||
- name: NetCore_Tools_Latest_Channel_Id
|
- name: Net_Eng_Latest_Channel_Id
|
||||||
value: 2
|
value: 2
|
||||||
|
|
||||||
# .NET 3 Tools - Validation
|
# .NET 3 Eng - Validation
|
||||||
- name: NETCore_3_Tools_Validation_Channel_Id
|
- name: NET_3_Eng_Validation_Channel_Id
|
||||||
value: 390
|
value: 390
|
||||||
|
|
||||||
# .NET 3 Tools - Latest
|
# .NET 3 Eng
|
||||||
- name: NetCore_3_Tools_Channel_Id
|
- name: NetCore_3_Tools_Channel_Id
|
||||||
value: 344
|
value: 344
|
||||||
|
|
||||||
|
|
@ -39,6 +41,14 @@ variables:
|
||||||
- name: PublicRelease_31_Channel_Id
|
- name: PublicRelease_31_Channel_Id
|
||||||
value: 129
|
value: 129
|
||||||
|
|
||||||
|
# General Testing
|
||||||
|
- name: GeneralTesting_Channel_Id
|
||||||
|
value: 529
|
||||||
|
|
||||||
|
# .NET Core 3.1 Blazor Features
|
||||||
|
- name: NetCore_31_Blazor_Features_Channel_Id
|
||||||
|
value: 531
|
||||||
|
|
||||||
# Whether the build is internal or not
|
# Whether the build is internal or not
|
||||||
- name: IsInternalBuild
|
- name: IsInternalBuild
|
||||||
value: ${{ and(ne(variables['System.TeamProject'], 'public'), contains(variables['Build.SourceBranch'], 'internal')) }}
|
value: ${{ and(ne(variables['System.TeamProject'], 'public'), contains(variables['Build.SourceBranch'], 'internal')) }}
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ parameters:
|
||||||
enable: false
|
enable: false
|
||||||
continueOnError: false
|
continueOnError: false
|
||||||
params: ''
|
params: ''
|
||||||
|
artifactNames: ''
|
||||||
|
|
||||||
# These parameters let the user customize the call to sdk-task.ps1 for publishing
|
# These parameters let the user customize the call to sdk-task.ps1 for publishing
|
||||||
# symbols & general artifacts as well as for signing validation
|
# symbols & general artifacts as well as for signing validation
|
||||||
|
|
@ -48,6 +49,12 @@ stages:
|
||||||
pool:
|
pool:
|
||||||
vmImage: 'windows-2019'
|
vmImage: 'windows-2019'
|
||||||
steps:
|
steps:
|
||||||
|
# This is necessary whenever we want to publish/restore to an AzDO private feed
|
||||||
|
# Since sdk-task.ps1 tries to restore packages we need to do this authentication here
|
||||||
|
# otherwise it'll complain about accessing a private feed.
|
||||||
|
- task: NuGetAuthenticate@0
|
||||||
|
displayName: 'Authenticate to AzDO Feeds'
|
||||||
|
|
||||||
- task: DownloadBuildArtifacts@0
|
- task: DownloadBuildArtifacts@0
|
||||||
displayName: Download Package Artifacts
|
displayName: Download Package Artifacts
|
||||||
inputs:
|
inputs:
|
||||||
|
|
@ -94,54 +101,244 @@ stages:
|
||||||
parameters:
|
parameters:
|
||||||
additionalParameters: ${{ parameters.SDLValidationParameters.params }}
|
additionalParameters: ${{ parameters.SDLValidationParameters.params }}
|
||||||
continueOnError: ${{ parameters.SDLValidationParameters.continueOnError }}
|
continueOnError: ${{ parameters.SDLValidationParameters.continueOnError }}
|
||||||
|
artifactNames: ${{ parameters.SDLValidationParameters.artifactNames }}
|
||||||
|
|
||||||
- template: \eng\common\templates\post-build\channels\netcore-dev-5.yml
|
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
|
||||||
parameters:
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NetCore_Dev5_Publish'
|
||||||
|
channelName: '.NET Core 5 Dev'
|
||||||
|
channelId: 131
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5-transport/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
|
||||||
|
parameters:
|
||||||
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
|
||||||
- template: \eng\common\templates\post-build\channels\netcore-dev-31.yml
|
|
||||||
parameters:
|
|
||||||
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NetCore_Dev31_Publish'
|
||||||
|
channelName: '.NET Core 3.1 Dev'
|
||||||
|
channelId: 128
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-transport/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
|
||||||
|
parameters:
|
||||||
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
|
||||||
- template: \eng\common\templates\post-build\channels\netcore-tools-latest.yml
|
|
||||||
parameters:
|
|
||||||
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
stageName: 'Net_Eng_Latest_Publish'
|
||||||
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
channelName: '.NET Eng - Latest'
|
||||||
|
channelId: 2
|
||||||
|
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\netcore-tools-validation.yml
|
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
|
||||||
parameters:
|
parameters:
|
||||||
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
|
||||||
- template: \eng\common\templates\post-build\channels\netcore-3-tools-validation.yml
|
|
||||||
parameters:
|
|
||||||
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
|
||||||
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
|
||||||
|
|
||||||
- template: \eng\common\templates\post-build\channels\netcore-3-tools.yml
|
|
||||||
parameters:
|
|
||||||
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'Net_Eng_Validation_Publish'
|
||||||
|
channelName: '.NET Eng - Validation'
|
||||||
|
channelId: 9
|
||||||
|
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 }}
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
|
||||||
- template: \eng\common\templates\post-build\channels\netcore-release-30.yml
|
|
||||||
parameters:
|
|
||||||
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NetCore_3_Tools_Validation_Publish'
|
||||||
|
channelName: '.NET 3 Tools - Validation'
|
||||||
|
channelId: 390
|
||||||
|
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 }}
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
|
||||||
- template: \eng\common\templates\post-build\channels\netcore-release-31.yml
|
|
||||||
parameters:
|
|
||||||
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NetCore_3_Tools_Publish'
|
||||||
|
channelName: '.NET 3 Tools'
|
||||||
|
channelId: 344
|
||||||
|
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 }}
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
|
||||||
- template: \eng\common\templates\post-build\channels\netcore-internal-30.yml
|
|
||||||
parameters:
|
|
||||||
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NetCore_Release30_Publish'
|
||||||
|
channelName: '.NET Core 3.0 Release'
|
||||||
|
channelId: 19
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3-transport/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
|
||||||
|
parameters:
|
||||||
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NetCore_Release31_Publish'
|
||||||
|
channelName: '.NET Core 3.1 Release'
|
||||||
|
channelId: 129
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-transport/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
|
||||||
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NetCore_Blazor31_Features_Publish'
|
||||||
|
channelName: '.NET Core 3.1 Blazor Features'
|
||||||
|
channelId: 531
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-blazor/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-blazor/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-blazor-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-internal-channel.yml
|
||||||
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NetCore_30_Internal_Servicing_Publishing'
|
||||||
|
channelName: '.NET Core 3.0 Internal Servicing'
|
||||||
|
channelId: 184
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal-transport/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-internal-channel.yml
|
||||||
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NetCore_31_Internal_Servicing_Publishing'
|
||||||
|
channelName: '.NET Core 3.1 Internal Servicing'
|
||||||
|
channelId: 550
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal-transport/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
|
||||||
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'General_Testing_Publish'
|
||||||
|
channelName: 'General Testing'
|
||||||
|
channelId: 529
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/general-testing/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/general-testing/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/general-testing-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
|
||||||
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NETCore_Tooling_Dev_Publishing'
|
||||||
|
channelName: '.NET Core Tooling Dev'
|
||||||
|
channelId: 548
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
|
||||||
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NETCore_Tooling_Release_Publishing'
|
||||||
|
channelName: '.NET Core Tooling Release'
|
||||||
|
channelId: 549
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
|
||||||
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NETCore_SDK_301xx_Publishing'
|
||||||
|
channelName: '.NET Core SDK 3.0.1xx'
|
||||||
|
channelId: 556
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3-transport/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-internal-channel.yml
|
||||||
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NETCore_SDK_301xx_Internal_Publishing'
|
||||||
|
channelName: '.NET Core SDK 3.0.1xx Internal'
|
||||||
|
channelId: 555
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal-transport/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
|
||||||
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NETCore_SDK_311xx_Publishing'
|
||||||
|
channelName: '.NET Core SDK 3.1.1xx'
|
||||||
|
channelId: 560
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-transport/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-internal-channel.yml
|
||||||
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NETCore_SDK_311xx_Internal_Publishing'
|
||||||
|
channelName: '.NET Core SDK 3.1.1xx Internal'
|
||||||
|
channelId: 559
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal-transport/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
|
||||||
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NETCore_SDK_312xx_Publishing'
|
||||||
|
channelName: '.NET Core SDK 3.1.2xx'
|
||||||
|
channelId: 558
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-transport/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet3.1-symbols/nuget/v3/index.json'
|
||||||
|
|
||||||
|
- template: \eng\common\templates\post-build\channels\generic-internal-channel.yml
|
||||||
|
parameters:
|
||||||
|
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
|
||||||
|
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
|
||||||
|
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
|
||||||
|
stageName: 'NETCore_SDK_312xx_Internal_Publishing'
|
||||||
|
channelName: '.NET Core SDK 3.1.2xx Internal'
|
||||||
|
channelId: 557
|
||||||
|
transportFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal-transport/nuget/v3/index.json'
|
||||||
|
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal/nuget/v3/index.json'
|
||||||
|
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal-symbols/nuget/v3/index.json'
|
||||||
|
|
@ -184,7 +184,14 @@ function InstallDotNetSdk([string] $dotnetRoot, [string] $version, [string] $arc
|
||||||
InstallDotNet $dotnetRoot $version $architecture
|
InstallDotNet $dotnetRoot $version $architecture
|
||||||
}
|
}
|
||||||
|
|
||||||
function InstallDotNet([string] $dotnetRoot, [string] $version, [string] $architecture = "", [string] $runtime = "", [bool] $skipNonVersionedFiles = $false) {
|
function InstallDotNet([string] $dotnetRoot,
|
||||||
|
[string] $version,
|
||||||
|
[string] $architecture = "",
|
||||||
|
[string] $runtime = "",
|
||||||
|
[bool] $skipNonVersionedFiles = $false,
|
||||||
|
[string] $runtimeSourceFeed = "",
|
||||||
|
[string] $runtimeSourceFeedKey = "") {
|
||||||
|
|
||||||
$installScript = GetDotNetInstallScript $dotnetRoot
|
$installScript = GetDotNetInstallScript $dotnetRoot
|
||||||
$installParameters = @{
|
$installParameters = @{
|
||||||
Version = $version
|
Version = $version
|
||||||
|
|
@ -195,10 +202,32 @@ function InstallDotNet([string] $dotnetRoot, [string] $version, [string] $archit
|
||||||
if ($runtime) { $installParameters.Runtime = $runtime }
|
if ($runtime) { $installParameters.Runtime = $runtime }
|
||||||
if ($skipNonVersionedFiles) { $installParameters.SkipNonVersionedFiles = $skipNonVersionedFiles }
|
if ($skipNonVersionedFiles) { $installParameters.SkipNonVersionedFiles = $skipNonVersionedFiles }
|
||||||
|
|
||||||
& $installScript @installParameters
|
try {
|
||||||
if ($lastExitCode -ne 0) {
|
& $installScript @installParameters
|
||||||
Write-PipelineTelemetryError -Category "InitializeToolset" -Message "Failed to install dotnet cli (exit code '$lastExitCode')."
|
}
|
||||||
ExitWithExitCode $lastExitCode
|
catch {
|
||||||
|
Write-PipelineTelemetryError -Category "InitializeToolset" -Message "Failed to install dotnet runtime '$runtime' from public location."
|
||||||
|
|
||||||
|
# Only the runtime can be installed from a custom [private] location.
|
||||||
|
if ($runtime -and ($runtimeSourceFeed -or $runtimeSourceFeedKey)) {
|
||||||
|
if ($runtimeSourceFeed) { $installParameters.AzureFeed = $runtimeSourceFeed }
|
||||||
|
|
||||||
|
if ($runtimeSourceFeedKey) {
|
||||||
|
$decodedBytes = [System.Convert]::FromBase64String($runtimeSourceFeedKey)
|
||||||
|
$decodedString = [System.Text.Encoding]::UTF8.GetString($decodedBytes)
|
||||||
|
$installParameters.FeedCredential = $decodedString
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
& $installScript @installParameters
|
||||||
|
}
|
||||||
|
catch {
|
||||||
|
Write-PipelineTelemetryError -Category "InitializeToolset" -Message "Failed to install dotnet runtime '$runtime' from custom location '$runtimeSourceFeed'."
|
||||||
|
ExitWithExitCode 1
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
ExitWithExitCode 1
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -200,8 +200,30 @@ function InstallDotNet {
|
||||||
fi
|
fi
|
||||||
bash "$install_script" --version $version --install-dir "$root" $archArg $runtimeArg $skipNonVersionedFilesArg || {
|
bash "$install_script" --version $version --install-dir "$root" $archArg $runtimeArg $skipNonVersionedFilesArg || {
|
||||||
local exit_code=$?
|
local exit_code=$?
|
||||||
Write-PipelineTelemetryError -category 'InitializeToolset' "Failed to install dotnet SDK (exit code '$exit_code')."
|
Write-PipelineTelemetryError -category 'InitializeToolset' "Failed to install dotnet SDK from public location (exit code '$exit_code')."
|
||||||
ExitWithExitCode $exit_code
|
|
||||||
|
if [[ -n "$runtimeArg" ]]; then
|
||||||
|
local runtimeSourceFeed=''
|
||||||
|
if [[ -n "${6:-}" ]]; then
|
||||||
|
runtimeSourceFeed="--azure-feed $6"
|
||||||
|
fi
|
||||||
|
|
||||||
|
local runtimeSourceFeedKey=''
|
||||||
|
if [[ -n "${7:-}" ]]; then
|
||||||
|
decodedFeedKey=`echo $7 | base64 --decode`
|
||||||
|
runtimeSourceFeedKey="--feed-credential $decodedFeedKey"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -n "$runtimeSourceFeed" || -n "$runtimeSourceFeedKey" ]]; then
|
||||||
|
bash "$install_script" --version $version --install-dir "$root" $archArg $runtimeArg $skipNonVersionedFilesArg $runtimeSourceFeed $runtimeSourceFeedKey || {
|
||||||
|
local exit_code=$?
|
||||||
|
Write-PipelineTelemetryError -category 'InitializeToolset' "Failed to install dotnet SDK from custom location '$runtimeSourceFeed' (exit code '$exit_code')."
|
||||||
|
ExitWithExitCode $exit_code
|
||||||
|
}
|
||||||
|
else
|
||||||
|
ExitWithExitCode $exit_code
|
||||||
|
fi
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
{
|
{
|
||||||
"sdk": {
|
"sdk": {
|
||||||
"version": "3.1.100-preview1-014400"
|
"version": "3.1.100"
|
||||||
},
|
},
|
||||||
"tools": {
|
"tools": {
|
||||||
"dotnet": "3.1.100-preview1-014400",
|
"dotnet": "3.1.100",
|
||||||
"runtimes": {
|
"runtimes": {
|
||||||
"dotnet/x64": [
|
"dotnet/x64": [
|
||||||
"$(MicrosoftNETCoreAppInternalPackageVersion)"
|
"$(MicrosoftNETCoreAppInternalPackageVersion)"
|
||||||
|
|
@ -25,7 +25,7 @@
|
||||||
},
|
},
|
||||||
"msbuild-sdks": {
|
"msbuild-sdks": {
|
||||||
"Yarn.MSBuild": "1.15.2",
|
"Yarn.MSBuild": "1.15.2",
|
||||||
"Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.19517.3",
|
"Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.19607.3",
|
||||||
"Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.19517.3"
|
"Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.19607.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue