diff --git a/NuGet.config b/NuGet.config
index 7c53c1524c7..b3c68c8aa49 100644
--- a/NuGet.config
+++ b/NuGet.config
@@ -10,7 +10,6 @@
-
diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index 7ebe4afbfc2..88eb32885d3 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -31,13 +31,13 @@
-
+
https://github.com/dotnet/arcade
- 490307dc9bb09caf016b2fa96005ac8aaa89c4e7
+ 85aaca76f75b109aa45b9e949f4a1c9047725d09
-
+
https://github.com/dotnet/arcade
- 490307dc9bb09caf016b2fa96005ac8aaa89c4e7
+ 85aaca76f75b109aa45b9e949f4a1c9047725d09
https://github.com/dotnet/xharness
diff --git a/eng/common/core-templates/jobs/jobs.yml b/eng/common/core-templates/jobs/jobs.yml
index 3d2deaa4a06..e653d19971c 100644
--- a/eng/common/core-templates/jobs/jobs.yml
+++ b/eng/common/core-templates/jobs/jobs.yml
@@ -27,6 +27,9 @@ parameters:
# Optional: Publish the assets as soon as the publish to BAR stage is complete, rather doing so in a separate stage.
publishAssetsImmediately: false
+ # Optional: 🌤️ or not the build has assets it wants to publish to BAR
+ isAssetlessBuild: false
+
# Optional: If using publishAssetsImmediately and additional parameters are needed, can be used to send along additional parameters (normally sent to post-build.yml)
artifactsPublishingAdditionalParameters: ''
signingValidationAdditionalParameters: ''
@@ -110,6 +113,7 @@ jobs:
runAsPublic: ${{ parameters.runAsPublic }}
publishAssetsImmediately: ${{ parameters.publishAssetsImmediately }}
+ isAssetlessBuild: ${{ parameters.isAssetlessBuild }}
enablePublishBuildArtifacts: ${{ parameters.enablePublishBuildArtifacts }}
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
signingValidationAdditionalParameters: ${{ parameters.signingValidationAdditionalParameters }}
diff --git a/eng/common/core-templates/steps/install-microbuild.yml b/eng/common/core-templates/steps/install-microbuild.yml
index dba506e74c3..2bcf974ee15 100644
--- a/eng/common/core-templates/steps/install-microbuild.yml
+++ b/eng/common/core-templates/steps/install-microbuild.yml
@@ -11,30 +11,6 @@ parameters:
steps:
- ${{ if eq(parameters.enableMicrobuild, 'true') }}:
- ${{ if eq(parameters.enableMicrobuildForMacAndLinux, 'true') }}:
- # Install Python 3.12.x on when Python > 3.12.x is installed - https://github.com/dotnet/source-build/issues/4802
- - script: |
- version=$(python3 --version | awk '{print $2}')
- major=$(echo $version | cut -d. -f1)
- minor=$(echo $version | cut -d. -f2)
-
- installPython=false
- if [ "$major" -gt 3 ] || { [ "$major" -eq 3 ] && [ "$minor" -gt 12 ]; }; then
- installPython=true
- fi
-
- echo "Python version: $version."
- echo "Install Python 3.12.x: $installPython."
- echo "##vso[task.setvariable variable=installPython;isOutput=true]$installPython"
- name: InstallPython
- displayName: 'Determine Python installation'
- condition: and(succeeded(), ne(variables['Agent.Os'], 'Windows_NT'))
-
- - task: UsePythonVersion@0
- inputs:
- versionSpec: '3.12.x'
- displayName: 'Use Python 3.12.x'
- condition: and(succeeded(), eq(variables['InstallPython.installPython'], 'true'), ne(variables['Agent.Os'], 'Windows_NT'))
-
# Needed to download the MicroBuild plugin nupkgs on Mac and Linux when nuget.exe is unavailable
- task: UseDotNet@2
displayName: Install .NET 8.0 SDK for MicroBuild Plugin
@@ -91,8 +67,18 @@ steps:
script: |
Write-Host "Copying Linux Path"
$MBSIGN_APPFOLDER = '$(MBSIGN_APPFOLDER)'
- $MBSIGN_APPFOLDER = $MBSIGN_APPFOLDER -replace '/build', ''
- $MBSIGN_APPFOLDER = $MBSIGN_APPFOLDER + '/1.1.1032' + '/build'
+ $MBSIGN_APPFOLDER = ($MBSIGN_APPFOLDER -replace '/build', '')
+
+ $versionRegex = '\d+\.\d+\.\d+'
+ $package = Get-ChildItem -Path $MBSIGN_APPFOLDER -Directory |
+ Where-Object { $_.Name -match $versionRegex }
+
+ if ($package.Count -ne 1) {
+ Write-Host "There should be exactly one matching subfolder, but found $($package.Count)."
+ exit 1
+ }
+
+ $MBSIGN_APPFOLDER = $package[0].FullName + '/build'
$MBSIGN_APPFOLDER | Write-Host
$SignConfigPath = $MBSIGN_APPFOLDER + '/signconfig.xml'
Copy-Item -Path "$(MBSIGN_APPFOLDER)/signconfig.xml" -Destination $SignConfigPath -Force
diff --git a/eng/common/sdk-task.ps1 b/eng/common/sdk-task.ps1
index ab2b13f63fb..a9d2a2d2699 100644
--- a/eng/common/sdk-task.ps1
+++ b/eng/common/sdk-task.ps1
@@ -6,12 +6,13 @@ Param(
[string] $msbuildEngine = $null,
[switch] $restore,
[switch] $prepareMachine,
+ [switch][Alias('nobl')]$excludeCIBinaryLog,
[switch] $help,
[Parameter(ValueFromRemainingArguments=$true)][String[]]$properties
)
$ci = $true
-$binaryLog = $true
+$binaryLog = if ($excludeCIBinaryLog) { $false } else { $true }
$warnAsError = $true
. $PSScriptRoot\tools.ps1
@@ -27,6 +28,7 @@ function Print-Usage() {
Write-Host "Advanced settings:"
Write-Host " -prepareMachine Prepare machine for CI run"
Write-Host " -msbuildEngine Msbuild engine to use to run build ('dotnet', 'vs', or unspecified)."
+ Write-Host " -excludeCIBinaryLog When running on CI, allow no binary log (short: -nobl)"
Write-Host ""
Write-Host "Command line arguments not listed above are passed thru to msbuild."
}
@@ -34,10 +36,11 @@ function Print-Usage() {
function Build([string]$target) {
$logSuffix = if ($target -eq 'Execute') { '' } else { ".$target" }
$log = Join-Path $LogDir "$task$logSuffix.binlog"
+ $binaryLogArg = if ($binaryLog) { "/bl:$log" } else { "" }
$outputPath = Join-Path $ToolsetDir "$task\"
MSBuild $taskProject `
- /bl:$log `
+ $binaryLogArg `
/t:$target `
/p:Configuration=$configuration `
/p:RepoRoot=$RepoRoot `
diff --git a/eng/common/sdk-task.sh b/eng/common/sdk-task.sh
index b9b9e58db9a..2f83adc0269 100644
--- a/eng/common/sdk-task.sh
+++ b/eng/common/sdk-task.sh
@@ -7,6 +7,10 @@ show_usage() {
echo " --verbosity Msbuild verbosity: q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]"
echo " --help Print help and exit"
echo ""
+
+ echo "Advanced settings:"
+ echo " --excludeCIBinarylog Don't output binary log (short: -nobl)"
+ echo ""
echo "Command line arguments not listed above are passed thru to msbuild."
}
@@ -27,10 +31,12 @@ Build() {
local log_suffix=""
[[ "$target" != "Execute" ]] && log_suffix=".$target"
local log="$log_dir/$task$log_suffix.binlog"
+ local binaryLogArg=""
+ [[ $binary_log == true ]] && binaryLogArg="/bl:$log"
local output_path="$toolset_dir/$task/"
MSBuild "$taskProject" \
- /bl:"$log" \
+ $binaryLogArg \
/t:"$target" \
/p:Configuration="$configuration" \
/p:RepoRoot="$repo_root" \
@@ -39,8 +45,10 @@ Build() {
$properties
}
+binary_log=true
configuration="Debug"
verbosity="minimal"
+exclude_ci_binary_log=false
restore=false
help=false
properties=''
@@ -60,6 +68,11 @@ while (($# > 0)); do
verbosity=$2
shift 2
;;
+ --excludecibinarylog|--nobl)
+ binary_log=false
+ exclude_ci_binary_log=true
+ shift 1
+ ;;
--help)
help=true
shift 1
@@ -72,7 +85,6 @@ while (($# > 0)); do
done
ci=true
-binaryLog=true
warnAsError=true
if $help; then
diff --git a/eng/common/sdl/packages.config b/eng/common/sdl/packages.config
index 4585cfd6bba..e5f543ea68c 100644
--- a/eng/common/sdl/packages.config
+++ b/eng/common/sdl/packages.config
@@ -1,4 +1,4 @@
-
+
diff --git a/global.json b/global.json
index cecbd136e45..6d6d49fa059 100644
--- a/global.json
+++ b/global.json
@@ -1,15 +1,15 @@
{
"sdk": {
- "version": "10.0.100-preview.3.25167.3",
+ "version": "10.0.100-preview.3.25201.16",
"allowPrerelease": true,
"rollForward": "major"
},
"tools": {
- "dotnet": "10.0.100-preview.3.25167.3"
+ "dotnet": "10.0.100-preview.3.25201.16"
},
"msbuild-sdks": {
- "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25210.1",
- "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25210.1"
+ "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25216.2",
+ "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25216.2"
},
"native-tools": {
"python3": "3.7.1"