Skip to content

Commit 9823503

Browse files
[main] Update dependencies from dotnet/arcade (#327)
* Update dependencies from https://github.com/dotnet/arcade build 20250206.4 Microsoft.DotNet.Arcade.Sdk From Version 10.0.0-beta.25080.7 -> To Version 10.0.0-beta.25106.4 * Update dependencies from https://github.com/dotnet/arcade build 20250213.2 Microsoft.DotNet.Arcade.Sdk From Version 10.0.0-beta.25080.7 -> To Version 10.0.0-beta.25113.2 * Update dependencies from https://github.com/dotnet/arcade build 20250220.6 Microsoft.DotNet.Arcade.Sdk From Version 10.0.0-beta.25080.7 -> To Version 10.0.0-beta.25120.6 * Update dependencies from https://github.com/dotnet/arcade build 20250225.2 Microsoft.DotNet.Arcade.Sdk From Version 10.0.0-beta.25080.7 -> To Version 10.0.0-beta.25125.2 * Update dependencies from https://github.com/dotnet/arcade build 20250226.4 Microsoft.DotNet.Arcade.Sdk From Version 10.0.0-beta.25080.7 -> To Version 10.0.0-beta.25126.4 --------- Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
1 parent ea26b97 commit 9823503

File tree

12 files changed

+150
-27
lines changed

12 files changed

+150
-27
lines changed

eng/Version.Details.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
<ProductDependencies>
44
</ProductDependencies>
55
<ToolsetDependencies>
6-
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.25080.7">
6+
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.25126.4">
77
<Uri>https://github.com/dotnet/arcade</Uri>
8-
<Sha>bbea86c614fcf4380c58c80eacd279a0b8305a79</Sha>
8+
<Sha>6d4b01bce3a29c172faff5abc0bfe2ae3d1fef3d</Sha>
99
</Dependency>
1010
</ToolsetDependencies>
1111
</Dependencies>

eng/common/core-templates/job/publish-build-assets.yml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -76,12 +76,11 @@ jobs:
7676
fetchDepth: 3
7777
clean: true
7878

79-
- task: DownloadBuildArtifacts@0
80-
displayName: Download artifact
79+
- task: DownloadPipelineArtifact@2
80+
displayName: Download Asset Manifests
8181
inputs:
8282
artifactName: AssetManifests
83-
downloadPath: '$(Build.StagingDirectory)/Download'
84-
checkDownloadedFiles: true
83+
targetPath: '$(Build.StagingDirectory)/AssetManifests'
8584
condition: ${{ parameters.condition }}
8685
continueOnError: ${{ parameters.continueOnError }}
8786

@@ -95,7 +94,7 @@ jobs:
9594
scriptLocation: scriptPath
9695
scriptPath: $(Build.SourcesDirectory)/eng/common/sdk-task.ps1
9796
arguments: -task PublishBuildAssets -restore -msbuildEngine dotnet
98-
/p:ManifestsPath='$(Build.StagingDirectory)/Download/AssetManifests'
97+
/p:ManifestsPath='$(Build.StagingDirectory)/AssetManifests'
9998
/p:MaestroApiEndpoint=https://maestro.dot.net
10099
/p:PublishUsingPipelines=${{ parameters.publishUsingPipelines }}
101100
/p:OfficialBuildId=$(Build.BuildNumber)

eng/common/core-templates/steps/generate-sbom.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
# IgnoreDirectories - Directories to ignore for SBOM generation. This will be passed through to the CG component detector.
66

77
parameters:
8-
PackageVersion: 9.0.0
8+
PackageVersion: 10.0.0
99
BuildDropPath: '$(Build.SourcesDirectory)/artifacts'
1010
PackageName: '.NET'
1111
ManifestDirPath: $(Build.ArtifactStagingDirectory)/sbom
@@ -38,7 +38,7 @@ steps:
3838
PackageName: ${{ parameters.packageName }}
3939
BuildDropPath: ${{ parameters.buildDropPath }}
4040
PackageVersion: ${{ parameters.packageVersion }}
41-
ManifestDirPath: ${{ parameters.manifestDirPath }}
41+
ManifestDirPath: ${{ parameters.manifestDirPath }}/$(ARTIFACT_NAME)
4242
${{ if ne(parameters.IgnoreDirectories, '') }}:
4343
AdditionalComponentDetectorArgs: '--IgnoreDirectories ${{ parameters.IgnoreDirectories }}'
4444

eng/common/core-templates/steps/source-build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ steps:
3737
# in the default public locations.
3838
internalRuntimeDownloadArgs=
3939
if [ '$(dotnetbuilds-internal-container-read-token-base64)' != '$''(dotnetbuilds-internal-container-read-token-base64)' ]; then
40-
internalRuntimeDownloadArgs='/p:DotNetRuntimeSourceFeed=https://dotnetbuilds.blob.core.windows.net/internal /p:DotNetRuntimeSourceFeedKey=$(dotnetbuilds-internal-container-read-token-base64) --runtimesourcefeed https://dotnetbuilds.blob.core.windows.net/internal --runtimesourcefeedkey $(dotnetbuilds-internal-container-read-token-base64)'
40+
internalRuntimeDownloadArgs='/p:DotNetRuntimeSourceFeed=https://ci.dot.net/internal /p:DotNetRuntimeSourceFeedKey=$(dotnetbuilds-internal-container-read-token-base64) --runtimesourcefeed https://ci.dot.net/internal --runtimesourcefeedkey $(dotnetbuilds-internal-container-read-token-base64)'
4141
fi
4242
4343
buildConfig=Release

eng/common/generate-sbom-prep.ps1

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,26 @@ Param(
44

55
. $PSScriptRoot\pipeline-logging-functions.ps1
66

7+
# Normally - we'd listen to the manifest path given, but 1ES templates will overwrite if this level gets uploaded directly
8+
# with their own overwriting ours. So we create it as a sub directory of the requested manifest path.
9+
$ArtifactName = "${env:SYSTEM_STAGENAME}_${env:AGENT_JOBNAME}_SBOM"
10+
$SafeArtifactName = $ArtifactName -replace '["/:<>\\|?@*"() ]', '_'
11+
$SbomGenerationDir = Join-Path $ManifestDirPath $SafeArtifactName
12+
13+
Write-Host "Artifact name before : $ArtifactName"
14+
Write-Host "Artifact name after : $SafeArtifactName"
15+
716
Write-Host "Creating dir $ManifestDirPath"
17+
818
# create directory for sbom manifest to be placed
9-
if (!(Test-Path -path $ManifestDirPath))
19+
if (!(Test-Path -path $SbomGenerationDir))
1020
{
11-
New-Item -ItemType Directory -path $ManifestDirPath
12-
Write-Host "Successfully created directory $ManifestDirPath"
21+
New-Item -ItemType Directory -path $SbomGenerationDir
22+
Write-Host "Successfully created directory $SbomGenerationDir"
1323
}
1424
else{
1525
Write-PipelineTelemetryError -category 'Build' "Unable to create sbom folder."
1626
}
1727

1828
Write-Host "Updating artifact name"
19-
$artifact_name = "${env:SYSTEM_STAGENAME}_${env:AGENT_JOBNAME}_SBOM" -replace '["/:<>\\|?@*"() ]', '_'
20-
Write-Host "Artifact name $artifact_name"
21-
Write-Host "##vso[task.setvariable variable=ARTIFACT_NAME]$artifact_name"
29+
Write-Host "##vso[task.setvariable variable=ARTIFACT_NAME]$SafeArtifactName"

eng/common/generate-sbom-prep.sh

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,24 @@ done
1414
scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
1515
. $scriptroot/pipeline-logging-functions.sh
1616

17+
18+
# replace all special characters with _, some builds use special characters like : in Agent.Jobname, that is not a permissible name while uploading artifacts.
19+
artifact_name=$SYSTEM_STAGENAME"_"$AGENT_JOBNAME"_SBOM"
20+
safe_artifact_name="${artifact_name//["/:<>\\|?@*$" ]/_}"
1721
manifest_dir=$1
1822

19-
if [ ! -d "$manifest_dir" ] ; then
20-
mkdir -p "$manifest_dir"
21-
echo "Sbom directory created." $manifest_dir
23+
# Normally - we'd listen to the manifest path given, but 1ES templates will overwrite if this level gets uploaded directly
24+
# with their own overwriting ours. So we create it as a sub directory of the requested manifest path.
25+
sbom_generation_dir="$manifest_dir/$safe_artifact_name"
26+
27+
if [ ! -d "$sbom_generation_dir" ] ; then
28+
mkdir -p "$sbom_generation_dir"
29+
echo "Sbom directory created." $sbom_generation_dir
2230
else
2331
Write-PipelineTelemetryError -category 'Build' "Unable to create sbom folder."
2432
fi
2533

26-
artifact_name=$SYSTEM_STAGENAME"_"$AGENT_JOBNAME"_SBOM"
2734
echo "Artifact name before : "$artifact_name
28-
# replace all special characters with _, some builds use special characters like : in Agent.Jobname, that is not a permissible name while uploading artifacts.
29-
safe_artifact_name="${artifact_name//["/:<>\\|?@*$" ]/_}"
3035
echo "Artifact name after : "$safe_artifact_name
3136
export ARTIFACT_NAME=$safe_artifact_name
3237
echo "##vso[task.setvariable variable=ARTIFACT_NAME]$safe_artifact_name"

eng/common/sdk-task.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ try {
6464
$GlobalJson.tools | Add-Member -Name "vs" -Value (ConvertFrom-Json "{ `"version`": `"16.5`" }") -MemberType NoteProperty
6565
}
6666
if( -not ($GlobalJson.tools.PSObject.Properties.Name -match "xcopy-msbuild" )) {
67-
$GlobalJson.tools | Add-Member -Name "xcopy-msbuild" -Value "17.12.0" -MemberType NoteProperty
67+
$GlobalJson.tools | Add-Member -Name "xcopy-msbuild" -Value "17.13.0" -MemberType NoteProperty
6868
}
6969
if ($GlobalJson.tools."xcopy-msbuild".Trim() -ine "none") {
7070
$xcopyMSBuildToolsFolder = InitializeXCopyMSBuild $GlobalJson.tools."xcopy-msbuild" -install $true

eng/common/sdk-task.sh

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
#!/usr/bin/env bash
2+
3+
show_usage() {
4+
echo "Common settings:"
5+
echo " --task <value> Name of Arcade task (name of a project in SdkTasks directory of the Arcade SDK package)"
6+
echo " --restore Restore dependencies"
7+
echo " --verbosity <value> Msbuild verbosity: q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]"
8+
echo " --help Print help and exit"
9+
echo ""
10+
echo "Command line arguments not listed above are passed thru to msbuild."
11+
}
12+
13+
source="${BASH_SOURCE[0]}"
14+
15+
# resolve $source until the file is no longer a symlink
16+
while [[ -h "$source" ]]; do
17+
scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
18+
source="$(readlink "$source")"
19+
# if $source was a relative symlink, we need to resolve it relative to the path where the
20+
# symlink file was located
21+
[[ $source != /* ]] && source="$scriptroot/$source"
22+
done
23+
scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
24+
25+
Build() {
26+
local target=$1
27+
local log_suffix=""
28+
[[ "$target" != "Execute" ]] && log_suffix=".$target"
29+
local log="$log_dir/$task$log_suffix.binlog"
30+
local output_path="$toolset_dir/$task/"
31+
32+
MSBuild "$taskProject" \
33+
/bl:"$log" \
34+
/t:"$target" \
35+
/p:Configuration="$configuration" \
36+
/p:RepoRoot="$repo_root" \
37+
/p:BaseIntermediateOutputPath="$output_path" \
38+
/v:"$verbosity" \
39+
$properties
40+
}
41+
42+
configuration="Debug"
43+
verbosity="minimal"
44+
restore=false
45+
help=false
46+
properties=''
47+
48+
while (($# > 0)); do
49+
lowerI="$(echo $1 | tr "[:upper:]" "[:lower:]")"
50+
case $lowerI in
51+
--task)
52+
task=$2
53+
shift 2
54+
;;
55+
--restore)
56+
restore=true
57+
shift 1
58+
;;
59+
--verbosity)
60+
verbosity=$2
61+
shift 2
62+
;;
63+
--help)
64+
help=true
65+
shift 1
66+
;;
67+
*)
68+
properties="$properties $1"
69+
shift 1
70+
;;
71+
esac
72+
done
73+
74+
ci=true
75+
binaryLog=true
76+
warnAsError=true
77+
78+
if $help; then
79+
show_usage
80+
exit 0
81+
fi
82+
83+
. "$scriptroot/tools.sh"
84+
InitializeToolset
85+
86+
if [[ -z "$task" ]]; then
87+
Write-PipelineTelemetryError -Category 'Task' -Name 'MissingTask' -Message "Missing required parameter '-task <value>'"
88+
ExitWithExitCode 1
89+
fi
90+
91+
taskProject=$(GetSdkTaskProject "$task")
92+
if [[ ! -e "$taskProject" ]]; then
93+
Write-PipelineTelemetryError -Category 'Task' -Name 'UnknownTask' -Message "Unknown task: $task"
94+
ExitWithExitCode 1
95+
fi
96+
97+
if $restore; then
98+
Build "Restore"
99+
fi
100+
101+
Build "Execute"
102+
103+
104+
ExitWithExitCode 0

eng/common/templates-official/job/job.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ jobs:
1616
parameters:
1717
PackageVersion: ${{ parameters.packageVersion }}
1818
BuildDropPath: ${{ parameters.buildDropPath }}
19+
ManifestDirPath: $(Build.ArtifactStagingDirectory)/sbom
1920
publishArtifacts: false
2021

2122
# publish artifacts

eng/common/tools.ps1

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -383,8 +383,8 @@ function InitializeVisualStudioMSBuild([bool]$install, [object]$vsRequirements =
383383

384384
# If the version of msbuild is going to be xcopied,
385385
# use this version. Version matches a package here:
386-
# https://dev.azure.com/dnceng/public/_artifacts/feed/dotnet-eng/NuGet/Microsoft.DotNet.Arcade.MSBuild.Xcopy/versions/17.12.0
387-
$defaultXCopyMSBuildVersion = '17.12.0'
386+
# https://dev.azure.com/dnceng/public/_artifacts/feed/dotnet-eng/NuGet/Microsoft.DotNet.Arcade.MSBuild.Xcopy/versions/17.13.0
387+
$defaultXCopyMSBuildVersion = '17.13.0'
388388

389389
if (!$vsRequirements) {
390390
if (Get-Member -InputObject $GlobalJson.tools -Name 'vs') {

0 commit comments

Comments
 (0)