Skip to content

Commit 5166501

Browse files
authored
Merge pull request #2465 from mhutch/merge-main-to-powderhouse
Merge main to powderhouse
2 parents 8585524 + f850d35 commit 5166501

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+2242
-87
lines changed

.vsts-ci-official.yml

Lines changed: 172 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,172 @@
1+
variables:
2+
- name: _TeamName
3+
value: DotNetCore
4+
- name: _DotNetArtifactsCategory
5+
value: .NETCore
6+
- name: Codeql.Enabled
7+
value: true
8+
9+
# CI and PR triggers
10+
trigger:
11+
batch: true
12+
branches:
13+
include:
14+
- main
15+
16+
pr:
17+
autoCancel: false
18+
branches:
19+
include:
20+
- '*'
21+
22+
resources:
23+
repositories:
24+
- repository: 1ESPipelineTemplates
25+
type: git
26+
name: 1ESPipelineTemplates/1ESPipelineTemplates
27+
ref: refs/tags/release
28+
29+
extends:
30+
template: v1/1ES.Official.PipelineTemplate.yml@1ESPipelineTemplates
31+
parameters:
32+
pool:
33+
name: NetCore1ESPool-Svc-Internal
34+
image: 1es-windows-2022
35+
os: windows
36+
customBuildTags:
37+
- ES365AIMigrationTooling
38+
stages:
39+
- stage: build
40+
displayName: Build and Test
41+
jobs:
42+
- template: /eng/common/templates-official/jobs/jobs.yml@self
43+
parameters:
44+
enableMicrobuild: true
45+
enablePublishBuildArtifacts: true
46+
enablePublishUsingPipelines: true
47+
enablePublishTestResults: true
48+
enablePublishBuildAssets: true
49+
enableTelemetry: true
50+
enableSourceBuild: true
51+
helixRepo: dotnet/command-line-api
52+
timeoutInMinutes: 180 # increase timeout since BAR publishing might wait a long time
53+
jobs:
54+
- job: Windows
55+
pool:
56+
name: NetCore1ESPool-Internal
57+
demands: ImageOverride -equals windows.vs2022.amd64
58+
variables:
59+
- ${{ if notin(variables['Build.Reason'], 'PullRequest') }}:
60+
# Publish-Build-Assets provides: MaestroAccessToken, BotAccount-dotnet-maestro-bot-PAT
61+
- group: DotNet-Symbol-Server-Pats
62+
- group: Publish-Build-Assets
63+
- name: _OfficialBuildArgs
64+
value: /p:DotNetSignType=$(_SignType)
65+
/p:TeamName=$(_TeamName)
66+
/p:DotNetPublishUsingPipelines=$(_PublishUsingPipelines)
67+
/p:DotNetArtifactsCategory=$(_DotNetArtifactsCategory)
68+
/p:OfficialBuildId=$(BUILD.BUILDNUMBER)
69+
/p:PublishToSymbolServer=true
70+
/p:DotNetSymbolServerTokenMsdl=$(microsoft-symbol-server-pat)
71+
/p:DotNetSymbolServerTokenSymWeb=$(symweb-symbol-server-pat)
72+
- name: _PublishUsingPipelines
73+
value: true
74+
# else
75+
- ${{ if in(variables['Build.Reason'], 'PullRequest') }}:
76+
- name: _OfficialBuildArgs
77+
value: ''
78+
strategy:
79+
matrix:
80+
${{ if in(variables['Build.Reason'], 'PullRequest') }}:
81+
Debug:
82+
_BuildConfig: Debug
83+
_SignType: test
84+
_BuildArgs:
85+
86+
Release:
87+
_BuildConfig: Release
88+
# PRs are not signed.
89+
${{ if in(variables['Build.Reason'], 'PullRequest') }}:
90+
_SignType: test
91+
${{ if notin(variables['Build.Reason'], 'PullRequest') }}:
92+
_SignType: real
93+
_BuildArgs: $(_OfficialBuildArgs)
94+
95+
templateContext:
96+
outputs:
97+
- output: pipelineArtifact
98+
displayName: Upload package artifacts
99+
condition: and(eq(variables['system.pullrequest.isfork'], false), eq(variables['_BuildConfig'], 'Release'))
100+
targetPath: artifacts/packages/
101+
artifactName: artifacts
102+
- output: pipelineArtifact
103+
displayName: Publish Artifact Symbols
104+
condition: and(eq(variables['system.pullrequest.isfork'], false), eq(variables['_BuildConfig'], 'Release'))
105+
targetPath: '$(Build.SourcesDirectory)\artifacts\SymStore\$(_BuildConfig)'
106+
artifactName: 'NativeSymbols'
107+
108+
steps:
109+
- checkout: self
110+
clean: true
111+
- script: eng\common\cibuild.cmd
112+
-configuration $(_BuildConfig)
113+
-prepareMachine
114+
$(_BuildArgs)
115+
displayName: Build and Publish
116+
117+
- job: Ubuntu
118+
displayName: Ubuntu
119+
pool:
120+
name: NetCore1ESPool-Svc-Internal
121+
demands: ImageOverride -equals 1es-ubuntu-2004
122+
os: linux
123+
strategy:
124+
matrix:
125+
${{ if in(variables['Build.Reason'], 'PullRequest') }}:
126+
Debug:
127+
_BuildConfig: Debug
128+
_SignType: none
129+
Release:
130+
_BuildConfig: Release
131+
_SignType: none
132+
steps:
133+
- checkout: self
134+
clean: true
135+
- bash: |
136+
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
137+
sudo apt-add-repository "deb https://apt.llvm.org/focal/ llvm-toolchain-focal-9 main"
138+
sudo apt-get update
139+
- bash: |
140+
sudo apt-get install cmake clang-9 libicu66 uuid-dev libcurl4-openssl-dev zlib1g-dev libkrb5-dev
141+
- script: eng/common/cibuild.sh
142+
--configuration $(_BuildConfig)
143+
--prepareMachine
144+
displayName: Build
145+
146+
- job: MacOS
147+
displayName: MacOS
148+
pool:
149+
name: Azure Pipelines
150+
image: macOS-latest
151+
os: macOS
152+
strategy:
153+
matrix:
154+
${{ if in(variables['Build.Reason'], 'PullRequest') }}:
155+
Debug:
156+
_BuildConfig: Debug
157+
_SignType: none
158+
_DotNetPublishToBlobFeed: false
159+
Release:
160+
_BuildConfig: Release
161+
_SignType: none
162+
_DotNetPublishToBlobFeed: false
163+
steps:
164+
- checkout: self
165+
clean: true
166+
- script: eng/common/cibuild.sh
167+
--configuration $(_BuildConfig)
168+
--prepareMachine
169+
displayName: Build
170+
171+
- ${{ if notin(variables['Build.Reason'], 'PullRequest') }}:
172+
- template: /eng/common/templates-official/post-build/post-build.yml@self

.vsts-ci.yml

Lines changed: 7 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -37,35 +37,11 @@ stages:
3737
jobs:
3838
- job: Windows
3939
pool:
40-
# For public or PR jobs, use the hosted pool. For internal jobs use the internal pool.
41-
# Will eventually change this to two BYOC pools.
42-
${{ if ne(variables['System.TeamProject'], 'internal') }}:
43-
name: NetCore-Public
44-
demands: ImageOverride -equals windows.vs2022.amd64.open
45-
${{ if eq(variables['System.TeamProject'], 'internal') }}:
46-
name: NetCore1ESPool-Internal
47-
demands: ImageOverride -equals windows.vs2022.amd64
40+
name: NetCore-Public
41+
demands: ImageOverride -equals windows.vs2022.amd64.open
4842
variables:
49-
# Only enable publishing in official builds.
50-
- ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
51-
# Publish-Build-Assets provides: MaestroAccessToken, BotAccount-dotnet-maestro-bot-PAT
52-
- group: DotNet-Symbol-Server-Pats
53-
- group: Publish-Build-Assets
54-
- name: _OfficialBuildArgs
55-
value: /p:DotNetSignType=$(_SignType)
56-
/p:TeamName=$(_TeamName)
57-
/p:DotNetPublishUsingPipelines=$(_PublishUsingPipelines)
58-
/p:DotNetArtifactsCategory=$(_DotNetArtifactsCategory)
59-
/p:OfficialBuildId=$(BUILD.BUILDNUMBER)
60-
/p:PublishToSymbolServer=true
61-
/p:DotNetSymbolServerTokenMsdl=$(microsoft-symbol-server-pat)
62-
/p:DotNetSymbolServerTokenSymWeb=$(symweb-symbol-server-pat)
63-
- name: _PublishUsingPipelines
64-
value: true
65-
# else
66-
- ${{ if or(eq(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'PullRequest')) }}:
67-
- name: _OfficialBuildArgs
68-
value: ''
43+
- name: _OfficialBuildArgs
44+
value: ''
6945
strategy:
7046
matrix:
7147
${{ if in(variables['Build.Reason'], 'PullRequest') }}:
@@ -76,12 +52,7 @@ stages:
7652

7753
Release:
7854
_BuildConfig: Release
79-
# PRs or external builds are not signed.
80-
${{ if or(eq(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'PullRequest')) }}:
81-
_SignType: test
82-
${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
83-
_SignType: real
84-
_BuildArgs: $(_OfficialBuildArgs)
55+
_SignType: test
8556
steps:
8657
- checkout: self
8758
clean: true
@@ -108,12 +79,8 @@ stages:
10879
- job: Ubuntu
10980
displayName: Ubuntu
11081
pool:
111-
${{ if eq(variables['System.TeamProject'], 'public') }}:
112-
name: NetCore-Svc-Public
113-
demands: ImageOverride -equals 1es-ubuntu-2004-open
114-
${{ if eq(variables['System.TeamProject'], 'internal') }}:
115-
name: NetCore1ESPool-Svc-Internal
116-
demands: ImageOverride -equals 1es-ubuntu-2004
82+
name: NetCore-Svc-Public
83+
demands: ImageOverride -equals 1es-ubuntu-2004-open
11784
strategy:
11885
matrix:
11986
${{ if in(variables['Build.Reason'], 'PullRequest') }}:
@@ -159,6 +126,3 @@ stages:
159126
--configuration $(_BuildConfig)
160127
--prepareMachine
161128
displayName: Build
162-
163-
- ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
164-
- template: eng\common\templates\post-build\post-build.yml

Directory.Packages.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="6.0.0" />
1919
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="6.0.0" />
2020
<!-- external dependencies -->
21-
<PackageVersion Include="ApprovalTests" Version="5.4.7" />
21+
<PackageVersion Include="ApprovalTests" Version="7.0.0-beta.3" />
2222
<PackageVersion Include="BenchmarkDotNet" Version="0.13.1" />
2323
<PackageVersion Include="FluentAssertions" Version="5.10.3" />
2424
<PackageVersion Include="Microsoft.CSharp" Version="4.7.0" />

eng/Version.Details.xml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,21 @@
22
<Dependencies>
33
<ProductDependencies>
44
<!-- Intermediate is necessary for source build. -->
5-
<Dependency Name="Microsoft.SourceBuild.Intermediate.source-build-reference-packages" Version="8.0.0-alpha.1.24061.1">
5+
<Dependency Name="Microsoft.SourceBuild.Intermediate.source-build-reference-packages" Version="8.0.0-alpha.1.24257.2">
66
<Uri>https://github.com/dotnet/source-build-reference-packages</Uri>
7-
<Sha>453a37ef7ae6c335cd49b3b9ab7713c87faeb265</Sha>
7+
<Sha>6ed73280a6d70f7e7ac39c86f2abe8c10983f0bb</Sha>
88
<SourceBuild RepoName="source-build-reference-packages" ManagedOnly="true" />
99
</Dependency>
1010
</ProductDependencies>
1111
<ToolsetDependencies>
12-
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="8.0.0-beta.24113.2">
12+
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="8.0.0-beta.24321.3">
1313
<Uri>https://github.com/dotnet/arcade</Uri>
14-
<Sha>da98edc4c3ea539f109ea320672136ceb32591a7</Sha>
14+
<Sha>a95bcc256e9bdf47394e4dab04872811c16daaea</Sha>
1515
</Dependency>
1616
<!-- Intermediate is necessary for source build. -->
17-
<Dependency Name="Microsoft.SourceBuild.Intermediate.arcade" Version="8.0.0-beta.24113.2">
17+
<Dependency Name="Microsoft.SourceBuild.Intermediate.arcade" Version="8.0.0-beta.24321.3">
1818
<Uri>https://github.com/dotnet/arcade</Uri>
19-
<Sha>da98edc4c3ea539f109ea320672136ceb32591a7</Sha>
19+
<Sha>a95bcc256e9bdf47394e4dab04872811c16daaea</Sha>
2020
<SourceBuild RepoName="arcade" ManagedOnly="true" />
2121
</Dependency>
2222
<!-- Don't declare a separate xliff-tasks intermediate as Arcade 8.0 does not have xliff intermediate declared. -->

eng/common/SetupNugetSources.ps1

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ Set-StrictMode -Version 2.0
3535
. $PSScriptRoot\tools.ps1
3636

3737
# Add source entry to PackageSources
38-
function AddPackageSource($sources, $SourceName, $SourceEndPoint, $creds, $Username, $Password) {
38+
function AddPackageSource($sources, $SourceName, $SourceEndPoint, $creds, $Username, $pwd) {
3939
$packageSource = $sources.SelectSingleNode("add[@key='$SourceName']")
4040

4141
if ($packageSource -eq $null)
@@ -48,12 +48,11 @@ function AddPackageSource($sources, $SourceName, $SourceEndPoint, $creds, $Usern
4848
else {
4949
Write-Host "Package source $SourceName already present."
5050
}
51-
52-
AddCredential -Creds $creds -Source $SourceName -Username $Username -Password $Password
51+
AddCredential -Creds $creds -Source $SourceName -Username $Username -pwd $pwd
5352
}
5453

5554
# Add a credential node for the specified source
56-
function AddCredential($creds, $source, $username, $password) {
55+
function AddCredential($creds, $source, $username, $pwd) {
5756
# Looks for credential configuration for the given SourceName. Create it if none is found.
5857
$sourceElement = $creds.SelectSingleNode($Source)
5958
if ($sourceElement -eq $null)
@@ -82,17 +81,18 @@ function AddCredential($creds, $source, $username, $password) {
8281
$passwordElement.SetAttribute("key", "ClearTextPassword")
8382
$sourceElement.AppendChild($passwordElement) | Out-Null
8483
}
85-
$passwordElement.SetAttribute("value", $Password)
84+
85+
$passwordElement.SetAttribute("value", $pwd)
8686
}
8787

88-
function InsertMaestroPrivateFeedCredentials($Sources, $Creds, $Username, $Password) {
88+
function InsertMaestroPrivateFeedCredentials($Sources, $Creds, $Username, $pwd) {
8989
$maestroPrivateSources = $Sources.SelectNodes("add[contains(@key,'darc-int')]")
9090

9191
Write-Host "Inserting credentials for $($maestroPrivateSources.Count) Maestro's private feeds."
9292

9393
ForEach ($PackageSource in $maestroPrivateSources) {
9494
Write-Host "`tInserting credential for Maestro's feed:" $PackageSource.Key
95-
AddCredential -Creds $creds -Source $PackageSource.Key -Username $Username -Password $Password
95+
AddCredential -Creds $creds -Source $PackageSource.Key -Username $Username -pwd $pwd
9696
}
9797
}
9898

@@ -144,13 +144,13 @@ if ($disabledSources -ne $null) {
144144
$userName = "dn-bot"
145145

146146
# Insert credential nodes for Maestro's private feeds
147-
InsertMaestroPrivateFeedCredentials -Sources $sources -Creds $creds -Username $userName -Password $Password
147+
InsertMaestroPrivateFeedCredentials -Sources $sources -Creds $creds -Username $userName -pwd $Password
148148

149149
# 3.1 uses a different feed url format so it's handled differently here
150150
$dotnet31Source = $sources.SelectSingleNode("add[@key='dotnet3.1']")
151151
if ($dotnet31Source -ne $null) {
152-
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
153-
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
152+
AddPackageSource -Sources $sources -SourceName "dotnet3.1-internal" -SourceEndPoint "https://pkgs.dev.azure.com/dnceng/_packaging/dotnet3.1-internal/nuget/v2" -Creds $creds -Username $userName -pwd $Password
153+
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 -pwd $Password
154154
}
155155

156156
$dotnetVersions = @('5','6','7','8')
@@ -159,9 +159,9 @@ foreach ($dotnetVersion in $dotnetVersions) {
159159
$feedPrefix = "dotnet" + $dotnetVersion;
160160
$dotnetSource = $sources.SelectSingleNode("add[@key='$feedPrefix']")
161161
if ($dotnetSource -ne $null) {
162-
AddPackageSource -Sources $sources -SourceName "$feedPrefix-internal" -SourceEndPoint "https://pkgs.dev.azure.com/dnceng/internal/_packaging/$feedPrefix-internal/nuget/v2" -Creds $creds -Username $userName -Password $Password
163-
AddPackageSource -Sources $sources -SourceName "$feedPrefix-internal-transport" -SourceEndPoint "https://pkgs.dev.azure.com/dnceng/internal/_packaging/$feedPrefix-internal-transport/nuget/v2" -Creds $creds -Username $userName -Password $Password
162+
AddPackageSource -Sources $sources -SourceName "$feedPrefix-internal" -SourceEndPoint "https://pkgs.dev.azure.com/dnceng/internal/_packaging/$feedPrefix-internal/nuget/v2" -Creds $creds -Username $userName -pwd $Password
163+
AddPackageSource -Sources $sources -SourceName "$feedPrefix-internal-transport" -SourceEndPoint "https://pkgs.dev.azure.com/dnceng/internal/_packaging/$feedPrefix-internal-transport/nuget/v2" -Creds $creds -Username $userName -pwd $Password
164164
}
165165
}
166166

167-
$doc.Save($filename)
167+
$doc.Save($filename)

eng/common/native/init-compiler.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ if [ -z "$CLR_CC" ]; then
6363
# Set default versions
6464
if [ -z "$majorVersion" ]; then
6565
# note: gcc (all versions) and clang versions higher than 6 do not have minor version in file name, if it is zero.
66-
if [ "$compiler" = "clang" ]; then versions="17 16 15 14 13 12 11 10 9 8 7 6.0 5.0 4.0 3.9 3.8 3.7 3.6 3.5"
66+
if [ "$compiler" = "clang" ]; then versions="18 17 16 15 14 13 12 11 10 9 8 7 6.0 5.0 4.0 3.9 3.8 3.7 3.6 3.5"
6767
elif [ "$compiler" = "gcc" ]; then versions="13 12 11 10 9 8 7 6 5 4.9"; fi
6868

6969
for version in $versions; do

0 commit comments

Comments
 (0)