Skip to content

Commit 21831b5

Browse files
dotnet-maestro[bot]mmitche
authored andcommitted
Update dependencies from https://github.com/dotnet/arcade build 20191127.5 (#17470)
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19577.5 - Microsoft.DotNet.GenAPI - 1.0.0-beta.19577.5 - Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19577.5
1 parent f495589 commit 21831b5

File tree

5 files changed

+253
-9
lines changed

5 files changed

+253
-9
lines changed

eng/Version.Details.xml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -413,17 +413,17 @@
413413
<Uri>https://github.com/aspnet/Extensions</Uri>
414414
<Sha>dcdecd07e6059a4b3041ea14baa36e7794343ce3</Sha>
415415
</Dependency>
416-
<Dependency Name="Microsoft.DotNet.GenAPI" Version="1.0.0-beta.19572.3">
416+
<Dependency Name="Microsoft.DotNet.GenAPI" Version="1.0.0-beta.19577.5">
417417
<Uri>https://github.com/dotnet/arcade</Uri>
418-
<Sha>0e0d227c57e69c03427d6e668716d62cf4ceb36e</Sha>
418+
<Sha>99c6b59a8afff97fe891341b39abe985f1d3c565</Sha>
419419
</Dependency>
420-
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="1.0.0-beta.19572.3">
420+
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="1.0.0-beta.19577.5">
421421
<Uri>https://github.com/dotnet/arcade</Uri>
422-
<Sha>0e0d227c57e69c03427d6e668716d62cf4ceb36e</Sha>
422+
<Sha>99c6b59a8afff97fe891341b39abe985f1d3c565</Sha>
423423
</Dependency>
424-
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="2.0.0-beta.19572.3">
424+
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="2.0.0-beta.19577.5">
425425
<Uri>https://github.com/dotnet/arcade</Uri>
426-
<Sha>0e0d227c57e69c03427d6e668716d62cf4ceb36e</Sha>
426+
<Sha>99c6b59a8afff97fe891341b39abe985f1d3c565</Sha>
427427
</Dependency>
428428
<Dependency Name="Microsoft.AspNetCore.Testing" Version="3.0.2-servicing.19575.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
429429
<Uri>https://github.com/aspnet/Extensions</Uri>

eng/Versions.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@
6666
-->
6767
<PropertyGroup Label="Automated">
6868
<!-- Packages from dotnet/arcade -->
69-
<MicrosoftDotNetGenAPIPackageVersion>1.0.0-beta.19572.3</MicrosoftDotNetGenAPIPackageVersion>
69+
<MicrosoftDotNetGenAPIPackageVersion>1.0.0-beta.19577.5</MicrosoftDotNetGenAPIPackageVersion>
7070
<!-- Packages from dotnet/roslyn -->
7171
<MicrosoftNetCompilersToolsetPackageVersion>3.3.1-beta4-19462-11</MicrosoftNetCompilersToolsetPackageVersion>
7272
<!-- Packages from dotnet/core-setup -->

eng/common/SetupNugetSources.ps1

Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
# This file is a temporary workaround for internal builds to be able to restore from private AzDO feeds.
2+
# This file should be removed as part of this issue: https://github.com/dotnet/arcade/issues/4080
3+
#
4+
# What the script does is iterate over all package sources in the pointed NuGet.config and add a credential entry
5+
# under <packageSourceCredentials> for each Maestro managed private feed. Two additional credential
6+
# entries are also added for the two private static internal feeds: dotnet3-internal and dotnet3-internal-transport.
7+
#
8+
# This script needs to be called in every job that will restore packages and which the base repo has
9+
# private AzDO feeds in the NuGet.config.
10+
#
11+
# See example YAML call for this script below. Note the use of the variable `$(dn-bot-dnceng-artifact-feeds-rw)`
12+
# from the AzureDevOps-Artifact-Feeds-Pats variable group.
13+
#
14+
# - task: PowerShell@2
15+
# displayName: Setup Private Feeds Credentials
16+
# condition: eq(variables['Agent.OS'], 'Windows_NT')
17+
# inputs:
18+
# filePath: $(Build.SourcesDirectory)/eng/common/SetupNugetSources.ps1
19+
# arguments: -ConfigFile ${Env:BUILD_SOURCESDIRECTORY}/NuGet.config -Password $Env:Token
20+
# env:
21+
# Token: $(dn-bot-dnceng-artifact-feeds-rw)
22+
23+
[CmdletBinding()]
24+
param (
25+
[Parameter(Mandatory = $true)][string]$ConfigFile,
26+
[Parameter(Mandatory = $true)][string]$Password
27+
)
28+
29+
$ErrorActionPreference = "Stop"
30+
Set-StrictMode -Version 2.0
31+
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
32+
33+
. $PSScriptRoot\tools.ps1
34+
35+
# Add source entry to PackageSources
36+
function AddPackageSource($sources, $SourceName, $SourceEndPoint, $creds, $Username, $Password) {
37+
$packageSource = $sources.SelectSingleNode("add[@key='$SourceName']")
38+
39+
if ($packageSource -eq $null)
40+
{
41+
$packageSource = $doc.CreateElement("add")
42+
$packageSource.SetAttribute("key", $SourceName)
43+
$packageSource.SetAttribute("value", $SourceEndPoint)
44+
$sources.AppendChild($packageSource) | Out-Null
45+
}
46+
else {
47+
Write-Host "Package source $SourceName already present."
48+
}
49+
50+
AddCredential -Creds $creds -Source $SourceName -Username $Username -Password $Password
51+
}
52+
53+
# Add a credential node for the specified source
54+
function AddCredential($creds, $source, $username, $password) {
55+
# Looks for credential configuration for the given SourceName. Create it if none is found.
56+
$sourceElement = $creds.SelectSingleNode($Source)
57+
if ($sourceElement -eq $null)
58+
{
59+
$sourceElement = $doc.CreateElement($Source)
60+
$creds.AppendChild($sourceElement) | Out-Null
61+
}
62+
63+
# Add the <Username> node to the credential if none is found.
64+
$usernameElement = $sourceElement.SelectSingleNode("add[@key='Username']")
65+
if ($usernameElement -eq $null)
66+
{
67+
$usernameElement = $doc.CreateElement("add")
68+
$usernameElement.SetAttribute("key", "Username")
69+
$sourceElement.AppendChild($usernameElement) | Out-Null
70+
}
71+
$usernameElement.SetAttribute("value", $Username)
72+
73+
# Add the <ClearTextPassword> to the credential if none is found.
74+
# Add it as a clear text because there is no support for encrypted ones in non-windows .Net SDKs.
75+
# -> https://github.com/NuGet/Home/issues/5526
76+
$passwordElement = $sourceElement.SelectSingleNode("add[@key='ClearTextPassword']")
77+
if ($passwordElement -eq $null)
78+
{
79+
$passwordElement = $doc.CreateElement("add")
80+
$passwordElement.SetAttribute("key", "ClearTextPassword")
81+
$sourceElement.AppendChild($passwordElement) | Out-Null
82+
}
83+
$passwordElement.SetAttribute("value", $Password)
84+
}
85+
86+
function InsertMaestroPrivateFeedCredentials($Sources, $Creds, $Password) {
87+
$maestroPrivateSources = $Sources.SelectNodes("add[contains(@key,'darc-int')]")
88+
89+
Write-Host "Inserting credentials for $($maestroPrivateSources.Count) Maestro's private feeds."
90+
91+
ForEach ($PackageSource in $maestroPrivateSources) {
92+
Write-Host "`tInserting credential for Maestro's feed:" $PackageSource.Key
93+
AddCredential -Creds $creds -Source $PackageSource.Key -Username $Username -Password $Password
94+
}
95+
}
96+
97+
if (!(Test-Path $ConfigFile -PathType Leaf)) {
98+
Write-Host "Couldn't find the file NuGet config file: $ConfigFile"
99+
ExitWithExitCode 1
100+
}
101+
102+
# Load NuGet.config
103+
$doc = New-Object System.Xml.XmlDocument
104+
$filename = (Get-Item $ConfigFile).FullName
105+
$doc.Load($filename)
106+
107+
# Get reference to <PackageSources> or create one if none exist already
108+
$sources = $doc.DocumentElement.SelectSingleNode("packageSources")
109+
if ($sources -eq $null) {
110+
$sources = $doc.CreateElement("packageSources")
111+
$doc.DocumentElement.AppendChild($sources) | Out-Null
112+
}
113+
114+
# Looks for a <PackageSourceCredentials> node. Create it if none is found.
115+
$creds = $doc.DocumentElement.SelectSingleNode("packageSourceCredentials")
116+
if ($creds -eq $null) {
117+
$creds = $doc.CreateElement("packageSourceCredentials")
118+
$doc.DocumentElement.AppendChild($creds) | Out-Null
119+
}
120+
121+
# Insert credential nodes for Maestro's private feeds
122+
InsertMaestroPrivateFeedCredentials -Sources $sources -Creds $creds -Password $Password
123+
124+
AddPackageSource -Sources $sources -SourceName "dotnet3-internal" -SourceEndPoint "https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal/nuget/v2" -Creds $creds -Username "dn-bot" -Password $Password
125+
AddPackageSource -Sources $sources -SourceName "dotnet3-internal-transport" -SourceEndPoint "https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal-transport/nuget/v2" -Creds $creds -Username "dn-bot" -Password $Password
126+
127+
$doc.Save($filename)

eng/common/SetupNugetSources.sh

Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
#!/usr/bin/env bash
2+
3+
# This file is a temporary workaround for internal builds to be able to restore from private AzDO feeds.
4+
# This file should be removed as part of this issue: https://github.com/dotnet/arcade/issues/4080
5+
#
6+
# What the script does is iterate over all package sources in the pointed NuGet.config and add a credential entry
7+
# under <packageSourceCredentials> for each Maestro's managed private feed. Two additional credential
8+
# entries are also added for the two private static internal feeds: dotnet3-internal and dotnet3-internal-transport.
9+
#
10+
# This script needs to be called in every job that will restore packages and which the base repo has
11+
# private AzDO feeds in the NuGet.config.
12+
#
13+
# See example YAML call for this script below. Note the use of the variable `$(dn-bot-dnceng-artifact-feeds-rw)`
14+
# from the AzureDevOps-Artifact-Feeds-Pats variable group.
15+
#
16+
# - task: Bash@3
17+
# displayName: Setup Private Feeds Credentials
18+
# inputs:
19+
# filePath: $(Build.SourcesDirectory)/eng/common/SetupNugetSources.sh
20+
# arguments: $BUILD_SOURCESDIRECTORY/NuGet.config $Token
21+
# condition: ne(variables['Agent.OS'], 'Windows_NT')
22+
# env:
23+
# Token: $(dn-bot-dnceng-artifact-feeds-rw)
24+
25+
ConfigFile=$1
26+
CredToken=$2
27+
NL='\n'
28+
TB=' '
29+
30+
source="${BASH_SOURCE[0]}"
31+
32+
# resolve $source until the file is no longer a symlink
33+
while [[ -h "$source" ]]; do
34+
scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
35+
source="$(readlink "$source")"
36+
# if $source was a relative symlink, we need to resolve it relative to the path where the
37+
# symlink file was located
38+
[[ $source != /* ]] && source="$scriptroot/$source"
39+
done
40+
scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
41+
42+
. "$scriptroot/tools.sh"
43+
44+
if [ ! -f "$ConfigFile" ]; then
45+
echo "Couldn't find the file NuGet config file: $ConfigFile"
46+
ExitWithExitCode 1
47+
fi
48+
49+
if [[ `uname -s` == "Darwin" ]]; then
50+
NL=$'\\\n'
51+
TB=''
52+
fi
53+
54+
# Ensure there is a <packageSources>...</packageSources> section.
55+
grep -i "<packageSources>" $ConfigFile
56+
if [ "$?" != "0" ]; then
57+
echo "Adding <packageSources>...</packageSources> section."
58+
ConfigNodeHeader="<configuration>"
59+
PackageSourcesTemplate="${TB}<packageSources>${NL}${TB}</packageSources>"
60+
61+
sed -i.bak "s|$ConfigNodeHeader|$ConfigNodeHeader${NL}$PackageSourcesTemplate|" NuGet.config
62+
fi
63+
64+
# Ensure there is a <packageSourceCredentials>...</packageSourceCredentials> section.
65+
grep -i "<packageSourceCredentials>" $ConfigFile
66+
if [ "$?" != "0" ]; then
67+
echo "Adding <packageSourceCredentials>...</packageSourceCredentials> section."
68+
69+
PackageSourcesNodeFooter="</packageSources>"
70+
PackageSourceCredentialsTemplate="${TB}<packageSourceCredentials>${NL}${TB}</packageSourceCredentials>"
71+
72+
sed -i.bak "s|$PackageSourcesNodeFooter|$PackageSourcesNodeFooter${NL}$PackageSourceCredentialsTemplate|" NuGet.config
73+
fi
74+
75+
# Ensure dotnet3-internal and dotnet3-internal-transport is in the packageSources
76+
grep -i "<add key=\"dotnet3-internal\">" $ConfigFile
77+
if [ "$?" != "0" ]; then
78+
echo "Adding dotnet3-internal to the packageSources."
79+
80+
PackageSourcesNodeFooter="</packageSources>"
81+
PackageSourceTemplate="${TB}<add key=\"dotnet3-internal\" value=\"https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal/nuget/v2\" />"
82+
83+
sed -i.bak "s|$PackageSourcesNodeFooter|$PackageSourceTemplate${NL}$PackageSourcesNodeFooter|" NuGet.config
84+
fi
85+
86+
# Ensure dotnet3-internal and dotnet3-internal-transport is in the packageSources
87+
grep -i "<add key=\"dotnet3-internal-transport\">" $ConfigFile
88+
if [ "$?" != "0" ]; then
89+
echo "Adding dotnet3-internal-transport to the packageSources."
90+
91+
PackageSourcesNodeFooter="</packageSources>"
92+
PackageSourceTemplate="${TB}<add key=\"dotnet3-internal-transport\" value=\"https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3-internal-transport/nuget/v2\" />"
93+
94+
sed -i.bak "s|$PackageSourcesNodeFooter|$PackageSourceTemplate${NL}$PackageSourcesNodeFooter|" NuGet.config
95+
fi
96+
97+
# I want things split line by line
98+
PrevIFS=$IFS
99+
IFS=$'\n'
100+
PackageSources=$(grep -oh '"darc-int-[^"]*"' $ConfigFile | tr -d '"')
101+
IFS=$PrevIFS
102+
103+
PackageSources+=('dotnet3-internal')
104+
PackageSources+=('dotnet3-internal-transport')
105+
106+
for FeedName in ${PackageSources[@]} ; do
107+
# Check if there is no existing credential for this FeedName
108+
grep -i "<$FeedName>" $ConfigFile
109+
if [ "$?" != "0" ]; then
110+
echo "Adding credentials for $FeedName."
111+
112+
PackageSourceCredentialsNodeFooter="</packageSourceCredentials>"
113+
NewCredential="${TB}${TB}<$FeedName>${NL}<add key=\"Username\" value=\"dn-bot\" />${NL}<add key=\"ClearTextPassword\" value=\"$CredToken\" />${NL}</$FeedName>"
114+
115+
sed -i.bak "s|$PackageSourceCredentialsNodeFooter|$NewCredential${NL}$PackageSourceCredentialsNodeFooter|" NuGet.config
116+
fi
117+
done

global.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
},
2626
"msbuild-sdks": {
2727
"Yarn.MSBuild": "1.15.2",
28-
"Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.19572.3",
29-
"Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.19572.3"
28+
"Microsoft.DotNet.Arcade.Sdk": "1.0.0-beta.19577.5",
29+
"Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.19577.5"
3030
}
3131
}

0 commit comments

Comments
 (0)