From bc8dfb5bcd9ac0e8af4d86389b92f9ad8dfed4ac Mon Sep 17 00:00:00 2001 From: Youssef Victor Date: Mon, 14 Apr 2025 09:04:23 +0200 Subject: [PATCH 01/16] Support XUnitV3 as test runner (#15671) --- .../tools/DefaultVersions.props | 3 + .../tools/Tests.props | 5 +- .../tools/Tests.targets | 3 + .../tools/VSTest.targets | 3 + .../tools/XUnitV3/XUnitV3.Runner.targets | 93 +++++++++++++++++++ .../tools/XUnitV3/XUnitV3.targets | 47 ++++++++++ .../tools/XUnitV3/xunit.runner.json | 4 + 7 files changed, 157 insertions(+), 1 deletion(-) create mode 100644 src/Microsoft.DotNet.Arcade.Sdk/tools/XUnitV3/XUnitV3.Runner.targets create mode 100644 src/Microsoft.DotNet.Arcade.Sdk/tools/XUnitV3/XUnitV3.targets create mode 100644 src/Microsoft.DotNet.Arcade.Sdk/tools/XUnitV3/xunit.runner.json diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/DefaultVersions.props b/src/Microsoft.DotNet.Arcade.Sdk/tools/DefaultVersions.props index 283f1d68f10..064eb2fa0bd 100644 --- a/src/Microsoft.DotNet.Arcade.Sdk/tools/DefaultVersions.props +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/DefaultVersions.props @@ -89,6 +89,9 @@ $(XUnitVersion) 3.0.2 + 2.0.0 + 1.6.3 + 3.8.3 $(MSTestVersion) $(MSTestVersion) diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.props b/src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.props index f79111d3e57..25f911cb753 100644 --- a/src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.props +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.props @@ -29,7 +29,10 @@ - + + + + diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.targets b/src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.targets index 168c3991a9d..b4579ce475a 100644 --- a/src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.targets +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.targets @@ -44,6 +44,7 @@ @@ -71,6 +72,8 @@ $(TestResultsLogDir)$(_ResultFileNameNoExt).log $(TestRunSettingsFile) $(TestRunnerAdditionalArguments) + $(RunArguments) + $(RunCommand) diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/VSTest.targets b/src/Microsoft.DotNet.Arcade.Sdk/tools/VSTest.targets index 35564525a5c..fcc64fff4e7 100644 --- a/src/Microsoft.DotNet.Arcade.Sdk/tools/VSTest.targets +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/VSTest.targets @@ -4,6 +4,9 @@ + + + <_TestEnvironment>%(TestToRun.EnvironmentDisplay) <_TestAssembly>%(TestToRun.Identity) diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/XUnitV3/XUnitV3.Runner.targets b/src/Microsoft.DotNet.Arcade.Sdk/tools/XUnitV3/XUnitV3.Runner.targets new file mode 100644 index 00000000000..f60168b4dfe --- /dev/null +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/XUnitV3/XUnitV3.Runner.targets @@ -0,0 +1,93 @@ + + + + + + + + <_TestResultDirectory>$([System.IO.Path]::GetDirectoryName('%(TestToRun.ResultsTrxPath)')) + <_TestResultTrxFileName>$([System.IO.Path]::GetFileName('%(TestToRun.ResultsTrxPath)')) + <_TestResultXmlFileName>$([System.IO.Path]::GetFileName('%(TestToRun.ResultsXmlPath)')) + <_TestResultHtmlFileName>$([System.IO.Path]::GetFileName('%(TestToRun.ResultsHtmlPath)')) + + + + <_TestEnvironment>%(TestToRun.EnvironmentDisplay) + <_TestAssembly>%(TestToRun.Identity) + <_TestRuntime>%(TestToRun.TestRuntime) + <_TestTimeout>%(TestToRun.TestTimeout) + <_TestRunnerAdditionalArguments>%(TestToRun.TestRunnerAdditionalArguments) + + <_TestRunner>%(TestToRun.RunCommand) + <_TestRunnerArgs Condition="'$(UseMicrosoftTestingPlatformRunner)' != 'true'">%(TestToRun.RunArguments) $(_TestRunnerAdditionalArguments) -xml "%(TestToRun.ResultsXmlPath)" -html "%(TestToRun.ResultsHtmlPath)" -trx "%(TestToRun.ResultsTrxPath)" + <_TestRunnerArgs Condition="'$(UseMicrosoftTestingPlatformRunner)' == 'true'">%(TestToRun.RunArguments) $(_TestRunnerAdditionalArguments) --results-directory "$(_TestResultDirectory)" --report-xunit --report-xunit-filename "$(_TestResultXmlFileName)" --report-xunit-html --report-xunit-html-filename "$(_TestResultHtmlFileName)" --report-trx --report-trx-filename "$(_TestResultTrxFileName)" + + $(DotNetRoot) + + + + <_TestRunnerArgs Condition="'$(UseMicrosoftTestingPlatformRunner)' != 'true'">$(_TestRunnerArgs) -noAutoReporters + <_TestRunnerArgs Condition="'$(UseMicrosoftTestingPlatformRunner)' == 'true'">$(_TestRunnerArgs) --auto-reporters off + + + + <_TestRunnerCommand>"$(_TestRunner)" $(_TestRunnerArgs) + + + <_TestRunnerCommand Condition="'$(TestCaptureOutput)' != 'false'">$(_TestRunnerCommand) >> "%(TestToRun.ResultsStdOutPath)" 2>&1 + + + + <_OutputFiles Include="%(TestToRun.ResultsXmlPath)" /> + <_OutputFiles Include="%(TestToRun.ResultsHtmlPath)" /> + <_OutputFiles Include="%(TestToRun.ResultsStdOutPath)" /> + + + + + + + + + + + + + + + + + + + <_ResultsFileToDisplay>%(TestToRun.ResultsHtmlPath) + <_ResultsFileToDisplay Condition="!Exists('$(_ResultsFileToDisplay)')">%(TestToRun.ResultsStdOutPath) + + + + + + + + + + + diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/XUnitV3/XUnitV3.targets b/src/Microsoft.DotNet.Arcade.Sdk/tools/XUnitV3/XUnitV3.targets new file mode 100644 index 00000000000..e8e529cec4a --- /dev/null +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/XUnitV3/XUnitV3.targets @@ -0,0 +1,47 @@ + + + + + false + + + true + + + + + + + + + + + + + + + + + $(MSBuildThisFileDirectory)xunit.runner.json + $(MSBuildThisFileDirectory)xunit.runner.json + + + + + + + + + + + + + diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/XUnitV3/xunit.runner.json b/src/Microsoft.DotNet.Arcade.Sdk/tools/XUnitV3/xunit.runner.json new file mode 100644 index 00000000000..8465a454364 --- /dev/null +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/XUnitV3/xunit.runner.json @@ -0,0 +1,4 @@ +{ + "$schema": "https://xunit.net/schema/current/xunit.runner.schema.json", + "shadowCopy": false +} From 6881d3151a8b40dc124b965645acc88043aa299c Mon Sep 17 00:00:00 2001 From: Matt Mitchell Date: Mon, 14 Apr 2025 09:18:54 -0700 Subject: [PATCH 02/16] Set artifact category to infrastructrure package (#15720) Co-authored-by: Viktor Hofer --- eng/Publishing.props | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/eng/Publishing.props b/eng/Publishing.props index 9454e90710a..b8fd6d23e2b 100644 --- a/eng/Publishing.props +++ b/eng/Publishing.props @@ -1,5 +1,8 @@ - - 3 - + + + + + + From a91d777526ccebb75fea97e8ea4a934b588d7433 Mon Sep 17 00:00:00 2001 From: Pavel Purma Date: Mon, 14 Apr 2025 18:20:16 +0200 Subject: [PATCH 03/16] aka.ms API endpoint update (#15737) Co-authored-by: Pavel Purma --- .../src/AkaMSLinksManager.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.DotNet.Deployment.Tasks.Links/src/AkaMSLinksManager.cs b/src/Microsoft.DotNet.Deployment.Tasks.Links/src/AkaMSLinksManager.cs index 48366b99067..abba6087d45 100644 --- a/src/Microsoft.DotNet.Deployment.Tasks.Links/src/AkaMSLinksManager.cs +++ b/src/Microsoft.DotNet.Deployment.Tasks.Links/src/AkaMSLinksManager.cs @@ -20,8 +20,8 @@ namespace Microsoft.DotNet.Deployment.Tasks.Links { public class AkaMSLinkManager { - private const string ApiBaseUrl = "https://redirectionapi.trafficmanager.net/api/aka"; - private const string Endpoint = "https://microsoft.onmicrosoft.com/redirectionapi"; + private const string ApiBaseUrl = "https://redirectionapi-ame.trafficmanager.net/api/aka"; + private const string Endpoint = "https://msazurecloud.onmicrosoft.com/RedirectionMgmtApi-Prod"; private const string Authority = "https://login.microsoftonline.com/72f988bf-86f1-41af-91ab-2d7cd011db47/oauth2/authorize"; /// /// Aka.ms max links per batch request. There are two maximums: From 4bbf3c5cd174619b6ac13557ec0713c29ed542e8 Mon Sep 17 00:00:00 2001 From: Matt Mitchell Date: Mon, 14 Apr 2025 09:47:34 -0700 Subject: [PATCH 04/16] Plan of record for arcade official build w/VMR (#15484) --- .../UnifiedBuild/VMR-Arcade-Official-Build.md | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 Documentation/UnifiedBuild/VMR-Arcade-Official-Build.md diff --git a/Documentation/UnifiedBuild/VMR-Arcade-Official-Build.md b/Documentation/UnifiedBuild/VMR-Arcade-Official-Build.md new file mode 100644 index 00000000000..7f182040773 --- /dev/null +++ b/Documentation/UnifiedBuild/VMR-Arcade-Official-Build.md @@ -0,0 +1,22 @@ +# Arcade Official Build in the time of VMR - One Pager + +## Introduction +This document outlines the plan and decisions made regarding the official build and validation process for Arcade. The purpose is to ensure that Arcade continues to support both VMR (Virtual Mono Repository) and non-VMR consumers effectively while maintaining the stability and reliability of the .NET ecosystem. + +## Plan Summary +- **Arcade will keep its official build process.** +- **Arcade's validation process will remain as it is, ensuring the integrity of the publishing process and some minimal verification.** +- **Potential future enhancement to include VMR validation for Arcade changes, to be implemented reactively.** + +## Discussion Points +- The main discussion revolved around whether Arcade should retain its official build or be produced by the VMR (Virtual Mono Repository). +- Concerns were raised about the validation process, the impact on consumers both within and outside the VMR, and the potential complications of breaking changes. +- The current model of Arcade validation and its importance in ensuring the integrity of the publishing process was highlighted. + +## Key Decisions +- **Arcade Official Build:** Arcade will retain its official build process. This decision is based on the need to support consumers outside the VMR and to avoid potential complications with the VMR schedule. +- **Arcade Validation:** The existing Arcade validation build will be maintained. This includes the validation of publishing processes and ensuring that changes do not break the overall .NET ecosystem. +- **Future Validation Enhancements:** There is a plan to potentially introduce additional validation by running full VMR builds against code changes in Arcade. This will be implemented reactively, based on the occurrence of issues, rather than proactively. + +## Next Steps +- **Monitoring:** The team will monitor the situation and be prepared to implement additional VMR validation if frequent issues arise with Arcade updates. From c69190974721d47aaab3534d2087a75471f7651d Mon Sep 17 00:00:00 2001 From: Matt Mitchell Date: Mon, 14 Apr 2025 10:45:30 -0700 Subject: [PATCH 05/16] Update publishing constants to support new content types for .NET 10 channels (#15719) --- .../tools/Publish.proj | 10 + .../SetupTargetFeedConfigV3Tests.cs | 197 +++++++++--------- .../SetupTargetFeedConfigV4Tests.cs | 175 ++++++++-------- .../src/model/PublishingConstants.cs | 100 +++++---- .../src/model/SetupTargetFeedConfigV3.cs | 35 ++-- .../src/model/SetupTargetFeedConfigV4.cs | 35 ++-- .../src/model/TargetFeedConfig.cs | 6 +- 7 files changed, 293 insertions(+), 265 deletions(-) diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/Publish.proj b/src/Microsoft.DotNet.Arcade.Sdk/tools/Publish.proj index ad9f28f9abc..b020f2cfbaf 100644 --- a/src/Microsoft.DotNet.Arcade.Sdk/tools/Publish.proj +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/Publish.proj @@ -139,6 +139,8 @@ <_ExistingSymbolPackage Include="@(Artifact)" Condition="'$(DotNetBuildSourceOnly)' != 'true' and '%(Artifact.SkipPublish)' != 'true' and $([System.String]::Copy('%(Filename)%(Extension)').EndsWith('.symbols.nupkg'))"> Blob + + Symbols $(SymbolPackageBaseRelativeBlobPath)%(Filename)%(Extension) <_PackageToPublish Include="@(Artifact)" Exclude="@(_ExistingSymbolPackage)" Condition="'%(Artifact.SkipPublish)' != 'true' and '%(Extension)' == '.nupkg'" /> @@ -185,6 +187,7 @@ %(_PackageToPublish.Identity) %(_PackageToPublish.IsShipping) Blob + Symbols %(_PackageToPublish.SymbolPackageRelativeBlobPath) @@ -312,6 +315,13 @@ + + + + %(ItemsToPushToBlobFeed.ManifestArtifactData);Category=%(ItemsToPushToBlobFeed.Category) + + + %(ItemsToPushToBlobFeed.ManifestArtifactData);Visibility=%(ItemsToPushToBlobFeed.Visibility) diff --git a/src/Microsoft.DotNet.Build.Tasks.Feed.Tests/SetupTargetFeedConfigV3Tests.cs b/src/Microsoft.DotNet.Build.Tasks.Feed.Tests/SetupTargetFeedConfigV3Tests.cs index 19b75a9d8bf..14396ab10a4 100644 --- a/src/Microsoft.DotNet.Build.Tasks.Feed.Tests/SetupTargetFeedConfigV3Tests.cs +++ b/src/Microsoft.DotNet.Build.Tasks.Feed.Tests/SetupTargetFeedConfigV3Tests.cs @@ -39,20 +39,6 @@ public class SetupTargetFeedConfigV3Tests "secondfilename" ); - private readonly List InstallersAndSymbols = new List() { - TargetFeedContentType.OSX, - TargetFeedContentType.Deb, - TargetFeedContentType.Rpm, - TargetFeedContentType.Node, - TargetFeedContentType.BinaryLayout, - TargetFeedContentType.Installer, - TargetFeedContentType.Maven, - TargetFeedContentType.VSIX, - TargetFeedContentType.Badge, - TargetFeedContentType.Symbols, - TargetFeedContentType.Other - }; - private readonly ITaskItem[] FeedKeys = GetFeedKeys(); private static ITaskItem[] GetFeedKeys() @@ -89,20 +75,38 @@ public void StableFeeds(bool publishInstallersAndChecksums, bool isInternalBuild { var expectedFeeds = new List(); - expectedFeeds.Add( - new TargetFeedConfig( - TargetFeedContentType.Package, - StablePackageFeed, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], - akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.ShippingOnly, - isolated: true, - @internal: isInternalBuild, - allowOverwrite: false, - symbolPublishVisibility: symbolVisibility)); + foreach (var contentType in PublishingConstants.Packages) + { + expectedFeeds.Add( + new TargetFeedConfig( + contentType, + StablePackageFeed, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], + akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.ShippingOnly, + isolated: true, + @internal: isInternalBuild, + allowOverwrite: false, + symbolPublishVisibility: symbolVisibility)); + + expectedFeeds.Add( + new TargetFeedConfig( + contentType, + PublishingConstants.FeedDotNetEng, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], + akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.NonShippingOnly, + isolated: false, + @internal: isInternalBuild, + allowOverwrite: false, + symbolPublishVisibility: symbolVisibility)); + } expectedFeeds.Add( new TargetFeedConfig( @@ -119,24 +123,9 @@ public void StableFeeds(bool publishInstallersAndChecksums, bool isInternalBuild allowOverwrite: false, symbolPublishVisibility: symbolVisibility)); - expectedFeeds.Add( - new TargetFeedConfig( - TargetFeedContentType.Package, - PublishingConstants.FeedDotNetEng, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], - akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.NonShippingOnly, - isolated: false, - @internal: isInternalBuild, - allowOverwrite: false, - symbolPublishVisibility: symbolVisibility)); - if (publishInstallersAndChecksums) { - foreach (var contentType in InstallersAndSymbols) + foreach (var contentType in PublishingConstants.InstallersAndSymbols) { if (contentType == TargetFeedContentType.Symbols) { @@ -206,37 +195,40 @@ public void NonStableAndInternal(bool publishInstallersAndChecksums) { var expectedFeeds = new List(); - expectedFeeds.Add(new TargetFeedConfig( - TargetFeedContentType.Package, - PublishingConstants.FeedDotNetEng, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], - akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.ShippingOnly, - isolated: false, - @internal: true, - allowOverwrite: false, - symbolPublishVisibility: symbolVisibility)); - - expectedFeeds.Add(new TargetFeedConfig( - TargetFeedContentType.Package, - PublishingConstants.FeedDotNetEng, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], - akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.NonShippingOnly, - isolated: false, - @internal: true, - allowOverwrite: false, - symbolPublishVisibility: symbolVisibility)); + foreach (var packageType in PublishingConstants.Packages) + { + expectedFeeds.Add(new TargetFeedConfig( + packageType, + PublishingConstants.FeedDotNetEng, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], + akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.ShippingOnly, + isolated: false, + @internal: true, + allowOverwrite: false, + symbolPublishVisibility: symbolVisibility)); + + expectedFeeds.Add(new TargetFeedConfig( + packageType, + PublishingConstants.FeedDotNetEng, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], + akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.NonShippingOnly, + isolated: false, + @internal: true, + allowOverwrite: false, + symbolPublishVisibility: symbolVisibility)); + } if (publishInstallersAndChecksums) { - foreach (var contentType in InstallersAndSymbols) + foreach (var contentType in PublishingConstants.InstallersAndSymbols) { expectedFeeds.Add( new TargetFeedConfig( @@ -317,39 +309,42 @@ public void NonStableAndPublic(bool publishInstallersAndChecksums) { var expectedFeeds = new List(); - expectedFeeds.Add( - new TargetFeedConfig( - TargetFeedContentType.Package, - PublishingConstants.FeedDotNetEng, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - latestLinkShortUrlPrefixes: [ $"{LatestLinkShortUrlPrefix}/{BuildQuality}" ], - akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.ShippingOnly, - isolated: false, - @internal: false, - allowOverwrite: false, - symbolPublishVisibility: symbolVisibility)); + foreach (var packageType in PublishingConstants.Packages) + { + expectedFeeds.Add( + new TargetFeedConfig( + packageType, + PublishingConstants.FeedDotNetEng, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], + akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.ShippingOnly, + isolated: false, + @internal: false, + allowOverwrite: false, + symbolPublishVisibility: symbolVisibility)); - expectedFeeds.Add( - new TargetFeedConfig( - TargetFeedContentType.Package, - PublishingConstants.FeedDotNetEng, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], - akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.NonShippingOnly, - isolated: false, - @internal: false, - allowOverwrite: false, - symbolPublishVisibility: symbolVisibility)); + expectedFeeds.Add( + new TargetFeedConfig( + packageType, + PublishingConstants.FeedDotNetEng, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], + akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.NonShippingOnly, + isolated: false, + @internal: false, + allowOverwrite: false, + symbolPublishVisibility: symbolVisibility)); + } if (publishInstallersAndChecksums) { - foreach (var contentType in InstallersAndSymbols) + foreach (var contentType in PublishingConstants.InstallersAndSymbols) { expectedFeeds.Add( new TargetFeedConfig( diff --git a/src/Microsoft.DotNet.Build.Tasks.Feed.Tests/SetupTargetFeedConfigV4Tests.cs b/src/Microsoft.DotNet.Build.Tasks.Feed.Tests/SetupTargetFeedConfigV4Tests.cs index f0f22c115db..c5216438e3a 100644 --- a/src/Microsoft.DotNet.Build.Tasks.Feed.Tests/SetupTargetFeedConfigV4Tests.cs +++ b/src/Microsoft.DotNet.Build.Tasks.Feed.Tests/SetupTargetFeedConfigV4Tests.cs @@ -40,20 +40,6 @@ public class SetupTargetFeedConfigV4Tests "secondfilename" ); - private readonly List InstallersAndSymbols = new List() { - TargetFeedContentType.OSX, - TargetFeedContentType.Deb, - TargetFeedContentType.Rpm, - TargetFeedContentType.Node, - TargetFeedContentType.BinaryLayout, - TargetFeedContentType.Installer, - TargetFeedContentType.Maven, - TargetFeedContentType.VSIX, - TargetFeedContentType.Badge, - TargetFeedContentType.Symbols, - TargetFeedContentType.Other - }; - private readonly ITaskItem[] FeedKeys = GetFeedKeys(); private static ITaskItem[] GetFeedKeys() @@ -91,9 +77,11 @@ public void StableFeeds(bool isInternalBuild) var expectedFeeds = new List(); - expectedFeeds.Add( + foreach (var contentType in PublishingConstants.Packages) + { + expectedFeeds.Add( new TargetFeedConfig( - TargetFeedContentType.Package, + contentType, StablePackageFeed, FeedType.AzDoNugetFeed, AzureDevOpsFeedsKey, @@ -106,37 +94,38 @@ public void StableFeeds(bool isInternalBuild) allowOverwrite: false, symbolPublishVisibility: symbolVisibility)); - expectedFeeds.Add( - new TargetFeedConfig( - TargetFeedContentType.Package, - PublishingConstants.FeedDotNetEng, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], - akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.ShippingOnly, - isolated: false, - @internal: isInternalBuild, - allowOverwrite: false, - symbolPublishVisibility: symbolVisibility)); + expectedFeeds.Add( + new TargetFeedConfig( + contentType, + PublishingConstants.FeedDotNetEng, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], + akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.ShippingOnly, + isolated: false, + @internal: isInternalBuild, + allowOverwrite: false, + symbolPublishVisibility: symbolVisibility)); - expectedFeeds.Add( - new TargetFeedConfig( - TargetFeedContentType.Package, - PublishingConstants.FeedDotNetEng, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], - akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.NonShippingOnly, - isolated: false, - @internal: isInternalBuild, - allowOverwrite: false, - symbolPublishVisibility: symbolVisibility)); + expectedFeeds.Add( + new TargetFeedConfig( + contentType, + PublishingConstants.FeedDotNetEng, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], + akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.NonShippingOnly, + isolated: false, + @internal: isInternalBuild, + allowOverwrite: false, + symbolPublishVisibility: symbolVisibility)); + } - foreach (var contentType in InstallersAndSymbols) + foreach (var contentType in PublishingConstants.InstallersAndSymbols) { expectedFeeds.Add( new TargetFeedConfig( @@ -200,8 +189,10 @@ public void NonStableAndInternal() var expectedFeeds = new List(); - expectedFeeds.Add(new TargetFeedConfig( - TargetFeedContentType.Package, + foreach (var contentType in PublishingConstants.Packages) + { + expectedFeeds.Add(new TargetFeedConfig( + contentType, PublishingConstants.FeedDotNetEng, FeedType.AzDoNugetFeed, AzureDevOpsFeedsKey, @@ -214,21 +205,22 @@ public void NonStableAndInternal() allowOverwrite: false, symbolPublishVisibility: symbolVisibility)); - expectedFeeds.Add(new TargetFeedConfig( - TargetFeedContentType.Package, - PublishingConstants.FeedDotNetEng, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], - akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.NonShippingOnly, - isolated: false, - @internal: true, - allowOverwrite: false, - symbolPublishVisibility: symbolVisibility)); + expectedFeeds.Add(new TargetFeedConfig( + contentType, + PublishingConstants.FeedDotNetEng, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], + akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.NonShippingOnly, + isolated: false, + @internal: true, + allowOverwrite: false, + symbolPublishVisibility: symbolVisibility)); + } - foreach (var contentType in InstallersAndSymbols) + foreach (var contentType in PublishingConstants.InstallersAndSymbols) { expectedFeeds.Add( new TargetFeedConfig( @@ -290,37 +282,40 @@ public void NonStableAndPublic() var expectedFeeds = new List(); - expectedFeeds.Add( - new TargetFeedConfig( - TargetFeedContentType.Package, - PublishingConstants.FeedDotNetEng, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], - akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.ShippingOnly, - isolated: false, - @internal: false, - allowOverwrite: false, - symbolPublishVisibility: symbolVisibility)); + foreach (var contentType in PublishingConstants.Packages) + { + expectedFeeds.Add( + new TargetFeedConfig( + contentType, + PublishingConstants.FeedDotNetEng, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], + akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.ShippingOnly, + isolated: false, + @internal: false, + allowOverwrite: false, + symbolPublishVisibility: symbolVisibility)); - expectedFeeds.Add( - new TargetFeedConfig( - TargetFeedContentType.Package, - PublishingConstants.FeedDotNetEng, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], - akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.NonShippingOnly, - isolated: false, - @internal: false, - allowOverwrite: false, - symbolPublishVisibility: symbolVisibility)); + expectedFeeds.Add( + new TargetFeedConfig( + contentType, + PublishingConstants.FeedDotNetEng, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + latestLinkShortUrlPrefixes: [$"{LatestLinkShortUrlPrefix}/{BuildQuality}"], + akaMSCreateLinkPatterns: PublishingConstants.DefaultAkaMSCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: PublishingConstants.DefaultAkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.NonShippingOnly, + isolated: false, + @internal: false, + allowOverwrite: false, + symbolPublishVisibility: symbolVisibility)); + } - foreach (var contentType in InstallersAndSymbols) + foreach (var contentType in PublishingConstants.InstallersAndSymbols) { expectedFeeds.Add( new TargetFeedConfig( diff --git a/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/PublishingConstants.cs b/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/PublishingConstants.cs index d5c4f1cbe10..28844b27254 100644 --- a/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/PublishingConstants.cs +++ b/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/PublishingConstants.cs @@ -47,6 +47,14 @@ public class PublishingConstants TargetFeedContentType.Other }; + public static readonly TargetFeedContentType[] Packages = { + TargetFeedContentType.Package, + TargetFeedContentType.CorePackage, + TargetFeedContentType.ToolingPackage, + TargetFeedContentType.InfrastructurePackage, + TargetFeedContentType.LibraryPackage, + }; + public enum BuildQuality { [Description("daily")] @@ -127,80 +135,80 @@ public enum BuildQuality private static TargetFeedSpecification[] DotNet6Feeds = { - (TargetFeedContentType.Package, FeedDotNet6Shipping, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNet6Transport, AssetSelection.NonShippingOnly), + (Packages, FeedDotNet6Shipping, AssetSelection.ShippingOnly), + (Packages, FeedDotNet6Transport, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; private static TargetFeedSpecification[] DotNet6InternalFeeds = { - (TargetFeedContentType.Package, FeedDotNet6InternalShipping, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNet6InternalTransport, AssetSelection.NonShippingOnly), + (Packages, FeedDotNet6InternalShipping, AssetSelection.ShippingOnly), + (Packages, FeedDotNet6InternalTransport, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingInternalForInstallers), (TargetFeedContentType.Checksum, FeedStagingInternalForChecksums), }; private static TargetFeedSpecification[] DotNet7Feeds = { - (TargetFeedContentType.Package, FeedDotNet7Shipping, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNet7Transport, AssetSelection.NonShippingOnly), + (Packages, FeedDotNet7Shipping, AssetSelection.ShippingOnly), + (Packages, FeedDotNet7Transport, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; private static TargetFeedSpecification[] DotNet7InternalFeeds = { - (TargetFeedContentType.Package, FeedDotNet7InternalShipping, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNet7InternalTransport, AssetSelection.NonShippingOnly), + (Packages, FeedDotNet7InternalShipping, AssetSelection.ShippingOnly), + (Packages, FeedDotNet7InternalTransport, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingInternalForInstallers), (TargetFeedContentType.Checksum, FeedStagingInternalForChecksums), }; private static TargetFeedSpecification[] DotNet8Feeds = { - (TargetFeedContentType.Package, FeedDotNet8Shipping, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNet8Transport, AssetSelection.NonShippingOnly), + (Packages, FeedDotNet8Shipping, AssetSelection.ShippingOnly), + (Packages, FeedDotNet8Transport, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; private static TargetFeedSpecification[] DotNet8WorkloadFeeds = { - (TargetFeedContentType.Package, FeedDotNet8Workloads, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNet8Workloads, AssetSelection.NonShippingOnly), + (Packages, FeedDotNet8Workloads, AssetSelection.ShippingOnly), + (Packages, FeedDotNet8Workloads, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; private static TargetFeedSpecification[] DotNet8InternalFeeds = { - (TargetFeedContentType.Package, FeedDotNet8InternalShipping, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNet8InternalTransport, AssetSelection.NonShippingOnly), + (Packages, FeedDotNet8InternalShipping, AssetSelection.ShippingOnly), + (Packages, FeedDotNet8InternalTransport, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingInternalForInstallers), (TargetFeedContentType.Checksum, FeedStagingInternalForChecksums), }; private static TargetFeedSpecification[] DotNet9Feeds = { - (TargetFeedContentType.Package, FeedDotNet9Shipping, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNet9Transport, AssetSelection.NonShippingOnly), + (Packages, FeedDotNet9Shipping, AssetSelection.ShippingOnly), + (Packages, FeedDotNet9Transport, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; private static TargetFeedSpecification[] DotNet9InternalFeeds = { - (TargetFeedContentType.Package, FeedDotNet9InternalShipping, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNet9InternalTransport, AssetSelection.NonShippingOnly), + (Packages, FeedDotNet9InternalShipping, AssetSelection.ShippingOnly), + (Packages, FeedDotNet9InternalTransport, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingInternalForInstallers), (TargetFeedContentType.Checksum, FeedStagingInternalForChecksums), }; private static TargetFeedSpecification[] DotNet9WorkloadFeeds = { - (TargetFeedContentType.Package, FeedDotNet9Workloads, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNet9Workloads, AssetSelection.NonShippingOnly), + (Packages, FeedDotNet9Workloads, AssetSelection.ShippingOnly), + (Packages, FeedDotNet9Workloads, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; @@ -209,94 +217,102 @@ public enum BuildQuality { (TargetFeedContentType.Package, FeedDotNet10Shipping, AssetSelection.ShippingOnly), (TargetFeedContentType.Package, FeedDotNet10Transport, AssetSelection.NonShippingOnly), + (TargetFeedContentType.InfrastructurePackage, FeedDotNetEng, AssetSelection.ShippingOnly), + (TargetFeedContentType.InfrastructurePackage, FeedDotNetEng, AssetSelection.NonShippingOnly), + (TargetFeedContentType.CorePackage, FeedDotNet10Shipping, AssetSelection.ShippingOnly), + (TargetFeedContentType.CorePackage, FeedDotNet10Transport, AssetSelection.NonShippingOnly), + (TargetFeedContentType.LibraryPackage, FeedDotNetLibrariesShipping, AssetSelection.ShippingOnly), + (TargetFeedContentType.LibraryPackage, FeedDotNetLibrariesTransport, AssetSelection.NonShippingOnly), + (TargetFeedContentType.ToolingPackage, FeedDotNetTools, AssetSelection.ShippingOnly), + (TargetFeedContentType.ToolingPackage, FeedDotNetTools, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; private static TargetFeedSpecification[] DotNet10InternalFeeds = { - (TargetFeedContentType.Package, FeedDotNet10InternalShipping, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNet10InternalTransport, AssetSelection.NonShippingOnly), + (Packages, FeedDotNet10InternalShipping, AssetSelection.ShippingOnly), + (Packages, FeedDotNet10InternalTransport, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingInternalForInstallers), (TargetFeedContentType.Checksum, FeedStagingInternalForChecksums), }; private static TargetFeedSpecification[] DotNet10WorkloadFeeds = { - (TargetFeedContentType.Package, FeedDotNet10Workloads, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNet10Workloads, AssetSelection.NonShippingOnly), + (Packages, FeedDotNet10Workloads, AssetSelection.ShippingOnly), + (Packages, FeedDotNet10Workloads, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; private static TargetFeedSpecification[] DotNetEngFeeds = { - (TargetFeedContentType.Package, FeedDotNetEng, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNetEng, AssetSelection.NonShippingOnly), + (Packages, FeedDotNetEng, AssetSelection.ShippingOnly), + (Packages, FeedDotNetEng, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; private static TargetFeedSpecification[] DotNetToolsFeeds = { - (TargetFeedContentType.Package, FeedDotNetTools, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNetTools, AssetSelection.NonShippingOnly), + (Packages, FeedDotNetTools, AssetSelection.ShippingOnly), + (Packages, FeedDotNetTools, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; private static TargetFeedSpecification[] DotNetToolsInternalFeeds = { - (TargetFeedContentType.Package, FeedDotNetToolsInternal, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNetToolsInternal, AssetSelection.NonShippingOnly), + (Packages, FeedDotNetToolsInternal, AssetSelection.ShippingOnly), + (Packages, FeedDotNetToolsInternal, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingInternalForInstallers), (TargetFeedContentType.Checksum, FeedStagingInternalForChecksums), }; private static TargetFeedSpecification[] DotNetExperimentalFeeds = { - (TargetFeedContentType.Package, FeedDotNetExperimental, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNetExperimental, AssetSelection.NonShippingOnly), + (Packages, FeedDotNetExperimental, AssetSelection.ShippingOnly), + (Packages, FeedDotNetExperimental, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; private static TargetFeedSpecification[] DotNetExperimentalInternalFeeds = { - (TargetFeedContentType.Package, FeedDotNetExperimentalInternal, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNetExperimentalInternal, AssetSelection.NonShippingOnly), + (Packages, FeedDotNetExperimentalInternal, AssetSelection.ShippingOnly), + (Packages, FeedDotNetExperimentalInternal, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingInternalForInstallers), (TargetFeedContentType.Checksum, FeedStagingInternalForChecksums), }; private static TargetFeedSpecification[] DotNetLibrariesFeeds = { - (TargetFeedContentType.Package, FeedDotNetLibrariesShipping, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNetLibrariesTransport, AssetSelection.NonShippingOnly), + (Packages, FeedDotNetLibrariesShipping, AssetSelection.ShippingOnly), + (Packages, FeedDotNetLibrariesTransport, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; private static TargetFeedSpecification[] DotNetLibrariesInternalFeeds = { - (TargetFeedContentType.Package, FeedDotNetLibrariesInternalShipping, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedDotNetLibrariesInternalTransport, AssetSelection.NonShippingOnly), + (Packages, FeedDotNetLibrariesInternalShipping, AssetSelection.ShippingOnly), + (Packages, FeedDotNetLibrariesInternalTransport, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingInternalForInstallers), (TargetFeedContentType.Checksum, FeedStagingInternalForChecksums), }; private static TargetFeedSpecification[] GeneralTestingFeeds = { - (TargetFeedContentType.Package, FeedGeneralTesting, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedGeneralTesting, AssetSelection.NonShippingOnly), + (Packages, FeedGeneralTesting, AssetSelection.ShippingOnly), + (Packages, FeedGeneralTesting, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingForInstallers), (TargetFeedContentType.Checksum, FeedStagingForChecksums), }; private static TargetFeedSpecification[] GeneralTestingInternalFeeds = { - (TargetFeedContentType.Package, FeedGeneralTestingInternal, AssetSelection.ShippingOnly), - (TargetFeedContentType.Package, FeedGeneralTestingInternal, AssetSelection.NonShippingOnly), + (Packages, FeedGeneralTestingInternal, AssetSelection.ShippingOnly), + (Packages, FeedGeneralTestingInternal, AssetSelection.NonShippingOnly), (InstallersAndSymbols, FeedStagingInternalForInstallers), (TargetFeedContentType.Checksum, FeedStagingInternalForChecksums), }; diff --git a/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/SetupTargetFeedConfigV3.cs b/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/SetupTargetFeedConfigV3.cs index cc0ce7a639b..877ed449385 100644 --- a/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/SetupTargetFeedConfigV3.cs +++ b/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/SetupTargetFeedConfigV3.cs @@ -110,19 +110,22 @@ private IEnumerable Feeds() CreateStablePackagesFeedIfNeeded(); CreateStableSymbolsFeedIfNeeded(); - yield return new TargetFeedConfig( - TargetFeedContentType.Package, - StablePackagesFeed, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - LatestLinkShortUrlPrefixes, - _targetChannelConfig.AkaMSCreateLinkPatterns, - _targetChannelConfig.AkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.ShippingOnly, - symbolPublishVisibility: SymbolServerVisibility, - isolated: true, - @internal: IsInternalBuild, - flatten: Flatten); + foreach (var packageType in PublishingConstants.Packages) + { + yield return new TargetFeedConfig( + packageType, + StablePackagesFeed, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + LatestLinkShortUrlPrefixes, + _targetChannelConfig.AkaMSCreateLinkPatterns, + _targetChannelConfig.AkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.ShippingOnly, + symbolPublishVisibility: SymbolServerVisibility, + isolated: true, + @internal: IsInternalBuild, + flatten: Flatten); + } yield return new TargetFeedConfig( TargetFeedContentType.Symbols, @@ -152,20 +155,20 @@ private IEnumerable Feeds() // If dealing with a stable build, the package feed targeted for shipping packages and symbols // should be skipped, as it is added above. - if (IsStableBuild && ((type is TargetFeedContentType.Package && spec.Assets == AssetSelection.ShippingOnly) || type is TargetFeedContentType.Symbols)) + if (IsStableBuild && ((PublishingConstants.Packages.Contains(type) && spec.Assets == AssetSelection.ShippingOnly) || type is TargetFeedContentType.Symbols)) { continue; } var oldFeed = spec.FeedUrl; var feed = GetFeedOverride(oldFeed); - if (type is TargetFeedContentType.Package && + if (PublishingConstants.Packages.Contains(type) && spec.Assets == AssetSelection.NonShippingOnly && FeedOverrides.TryGetValue("transport-packages", out string newFeed)) { feed = newFeed; } - else if (type is TargetFeedContentType.Package && + else if (PublishingConstants.Packages.Contains(type) && spec.Assets == AssetSelection.ShippingOnly && FeedOverrides.TryGetValue("shipping-packages", out newFeed)) { diff --git a/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/SetupTargetFeedConfigV4.cs b/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/SetupTargetFeedConfigV4.cs index abd47b2efac..997620c9c30 100644 --- a/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/SetupTargetFeedConfigV4.cs +++ b/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/SetupTargetFeedConfigV4.cs @@ -109,34 +109,39 @@ private IEnumerable Feeds() { CreateStablePackagesFeedIfNeeded(); - yield return new TargetFeedConfig( - TargetFeedContentType.Package, - StablePackagesFeed, - FeedType.AzDoNugetFeed, - AzureDevOpsFeedsKey, - LatestLinkShortUrlPrefixes, - _targetChannelConfig.AkaMSCreateLinkPatterns, - _targetChannelConfig.AkaMSDoNotCreateLinkPatterns, - assetSelection: AssetSelection.CouldBeStable, - symbolPublishVisibility: SymbolServerVisibility, - isolated: true, - @internal: IsInternalBuild, - flatten: Flatten); + foreach (var packageType in PublishingConstants.Packages) + { + yield return new TargetFeedConfig( + packageType, + StablePackagesFeed, + FeedType.AzDoNugetFeed, + AzureDevOpsFeedsKey, + LatestLinkShortUrlPrefixes, + _targetChannelConfig.AkaMSCreateLinkPatterns, + _targetChannelConfig.AkaMSDoNotCreateLinkPatterns, + assetSelection: AssetSelection.CouldBeStable, + symbolPublishVisibility: SymbolServerVisibility, + isolated: true, + @internal: IsInternalBuild, + flatten: Flatten); + } } foreach (var spec in _targetChannelConfig.TargetFeeds) { foreach (var type in spec.ContentTypes) { + // This code specifically has any package type to go to + // the override feed, rather than splitting them by content type. var oldFeed = spec.FeedUrl; var feed = GetFeedOverride(oldFeed); - if (type is TargetFeedContentType.Package && + if (PublishingConstants.Packages.Contains(type) && spec.Assets == AssetSelection.NonShippingOnly && FeedOverrides.TryGetValue("transport-packages", out string newFeed)) { feed = newFeed; } - else if (type is TargetFeedContentType.Package && + else if (PublishingConstants.Packages.Contains(type) && spec.Assets == AssetSelection.ShippingOnly && FeedOverrides.TryGetValue("shipping-packages", out newFeed)) { diff --git a/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/TargetFeedConfig.cs b/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/TargetFeedConfig.cs index 1c329bfe402..b2f25c8fb4f 100644 --- a/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/TargetFeedConfig.cs +++ b/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/TargetFeedConfig.cs @@ -162,7 +162,11 @@ public enum TargetFeedContentType Maven = 512, VSIX = 1024, Badge = 2048, - Other = 4096 + Other = 4096, + InfrastructurePackage = 8192, + CorePackage = 16384, + LibraryPackage = 32768, + ToolingPackage = 65536 } public enum SymbolPublishVisibility From a0c7acba24c3ca9a9559408527669d88a3926002 Mon Sep 17 00:00:00 2001 From: Adam Sitnik Date: Mon, 14 Apr 2025 20:14:22 +0200 Subject: [PATCH 06/16] [BLOCKED] update System.CommandLine (#15492) --- eng/Version.Details.xml | 8 +++--- eng/Versions.props | 2 +- src/Microsoft.DotNet.MacOsPkg/Cli/Program.cs | 26 +++++++++---------- .../Program.cs | 12 ++++----- 4 files changed, 24 insertions(+), 24 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index e97548a1c09..1fc7aaa5463 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -138,9 +138,9 @@ - + https://github.com/dotnet/command-line-api - 5ea97af07263ea3ef68a18557c8aa3f7e3200bda + e9b0511d7f1128e2bc3be7a658a2a4ea977e602d @@ -178,9 +178,9 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-runtime 990ebf52fc408ca45929fd176d2740675a67fab8 - + https://github.com/dotnet/command-line-api - 5ea97af07263ea3ef68a18557c8aa3f7e3200bda + e9b0511d7f1128e2bc3be7a658a2a4ea977e602d diff --git a/eng/Versions.props b/eng/Versions.props index b3959463347..78c8e7b7baa 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -26,7 +26,7 @@ 1.1.0-beta.25208.1 1.1.0-beta.25208.1 - 2.0.0-beta4.24126.1 + 2.0.0-beta5.25210.1 4.3.0 diff --git a/src/Microsoft.DotNet.MacOsPkg/Cli/Program.cs b/src/Microsoft.DotNet.MacOsPkg/Cli/Program.cs index 7a5ebdf23bc..7c9684e9ddb 100644 --- a/src/Microsoft.DotNet.MacOsPkg/Cli/Program.cs +++ b/src/Microsoft.DotNet.MacOsPkg/Cli/Program.cs @@ -27,20 +27,20 @@ public static int Main(string[] args) return 1; } - CliRootCommand rootCommand = Setup(); - return new CliConfiguration(rootCommand).Invoke(args); + RootCommand rootCommand = Setup(); + return new CommandLineConfiguration(rootCommand).Invoke(args); } /// /// Set up the command line interface and associated actions. /// - /// Root cli command - private static CliRootCommand Setup() + /// Root command + private static RootCommand Setup() { - var rootCommand = new CliRootCommand(); - var unpackSrcArgument = new CliArgument("src") { Description = "Source path of the .pkg or .app file" }; - var unpackDestinationArgument = new CliArgument("dst") { Description = "Destination path to unpack the file" }; - var unpackCommand = new CliCommand("unpack", "Unpack a .pkg or .app file") + var rootCommand = new RootCommand(); + var unpackSrcArgument = new Argument("src") { Description = "Source path of the .pkg or .app file" }; + var unpackDestinationArgument = new Argument("dst") { Description = "Destination path to unpack the file" }; + var unpackCommand = new Command("unpack", "Unpack a .pkg or .app file") { Arguments = { unpackSrcArgument, unpackDestinationArgument } }; @@ -51,9 +51,9 @@ private static CliRootCommand Setup() return MacOsPkgCore.Unpack(srcPath, dstPath); }); - var packSrcArgument = new CliArgument("src") { Description = "Source path to pack." }; - var packDstArgument = new CliArgument("dst") { Description = "Destination path of the .pkg or .app file." }; - var packCommand = new CliCommand("pack", "Pack a directory into a .pkg or .app file.") + var packSrcArgument = new Argument("src") { Description = "Source path to pack." }; + var packDstArgument = new Argument("dst") { Description = "Destination path of the .pkg or .app file." }; + var packCommand = new Command("pack", "Pack a directory into a .pkg or .app file.") { Arguments = { packSrcArgument, packDstArgument } }; @@ -64,8 +64,8 @@ private static CliRootCommand Setup() return MacOsPkgCore.Pack(srcPath, dstPath); }); - var pkgOrAppArgument = new CliArgument("src") { Description = "Input pkg or app to verify." }; - var verifyCommand = new CliCommand("verify", "Verify that a pkg or app is signed.") + var pkgOrAppArgument = new Argument("src") { Description = "Input pkg or app to verify." }; + var verifyCommand = new Command("verify", "Verify that a pkg or app is signed.") { Arguments = { pkgOrAppArgument } }; diff --git a/src/VersionTools/Microsoft.DotNet.VersionTools.Cli/Program.cs b/src/VersionTools/Microsoft.DotNet.VersionTools.Cli/Program.cs index aa609020c35..57f48fdcbe7 100644 --- a/src/VersionTools/Microsoft.DotNet.VersionTools.Cli/Program.cs +++ b/src/VersionTools/Microsoft.DotNet.VersionTools.Cli/Program.cs @@ -13,31 +13,31 @@ static int Main(string[] args) { //// Global options - CliRootCommand rootCommand = new("Microsoft.DotNet.VersionTools.Cli v" + Environment.Version.ToString(2)) + RootCommand rootCommand = new("Microsoft.DotNet.VersionTools.Cli v" + Environment.Version.ToString(2)) { TreatUnmatchedTokensAsErrors = true }; // Package command - CliOption assetsDirectoryOption = new("--assets-path", "-d") + Option assetsDirectoryOption = new("--assets-path", "-d") { Description = "Path to the directory where the assets are located", Required = true }; - CliOption searchPatternOption = new("--search-pattern", "-s") + Option searchPatternOption = new("--search-pattern", "-s") { Description = "The search string to match against the names of subdirectories in --assets-path. See Directory.GetFiles for details.", DefaultValueFactory = _ => "*.nupkg" }; - CliOption recursiveOption = new("--recursive", "-r") + Option recursiveOption = new("--recursive", "-r") { Description = "Search for assets recursively.", DefaultValueFactory = _ => true }; - CliCommand trimAssetVersionCommand = new("trim-assets-version", "Trim versions from provided assets. Currently, only NuGet packages are supported."); + System.CommandLine.Command trimAssetVersionCommand = new("trim-assets-version", "Trim versions from provided assets. Currently, only NuGet packages are supported."); trimAssetVersionCommand.Options.Add(assetsDirectoryOption); trimAssetVersionCommand.Options.Add(searchPatternOption); trimAssetVersionCommand.Options.Add(recursiveOption); @@ -59,6 +59,6 @@ static int Main(string[] args) }); rootCommand.Subcommands.Add(trimAssetVersionCommand); - return new CliConfiguration(rootCommand).Invoke(args); + return new CommandLineConfiguration(rootCommand).Invoke(args); } } From 5af24911dd2de348e66143167d66d05eb55a9db6 Mon Sep 17 00:00:00 2001 From: Youssef Victor Date: Tue, 15 Apr 2025 01:20:05 +0200 Subject: [PATCH 07/16] Update XUnitV3Version to 2.0.1 (#15741) --- Directory.Packages.props | 2 +- src/Microsoft.DotNet.Arcade.Sdk/tools/DefaultVersions.props | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index df19d1c9e83..998fec90a2e 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -14,7 +14,7 @@ 2.9.2 - 2.0.0 + 2.0.1 1.16.0 $(XUnitVersion) 3.0.2 diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/DefaultVersions.props b/src/Microsoft.DotNet.Arcade.Sdk/tools/DefaultVersions.props index 064eb2fa0bd..b3665fd83eb 100644 --- a/src/Microsoft.DotNet.Arcade.Sdk/tools/DefaultVersions.props +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/DefaultVersions.props @@ -89,7 +89,7 @@ $(XUnitVersion) 3.0.2 - 2.0.0 + 2.0.1 1.6.3 3.8.3 From cd1ab27fcb4006e5028b9d15e9d60ca0df671de8 Mon Sep 17 00:00:00 2001 From: Viktor Hofer Date: Tue, 15 Apr 2025 10:12:59 +0200 Subject: [PATCH 08/16] Avoid the use of InitialTargets in arcade tests (#15743) --- src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.targets | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.targets b/src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.targets index b4579ce475a..8ae93d3051f 100644 --- a/src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.targets +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/Tests.targets @@ -1,5 +1,5 @@ - + true @@ -23,8 +23,7 @@ $(MSBuildThisFileDirectory)$(TestRunnerName)\$(TestRunnerName).targets - + @@ -33,8 +32,8 @@ x64 - - + + <_TestArchitectureItems Include="$(TestArchitectures)" /> From 96e2a9e8ca9a254b63229f990497572049df1270 Mon Sep 17 00:00:00 2001 From: Viktor Hofer Date: Tue, 15 Apr 2025 10:35:55 +0200 Subject: [PATCH 09/16] Fix SymbolPackageBaseRelativeBlobPath for non AzDO builds (#15744) --- src/Microsoft.DotNet.Arcade.Sdk/tools/Publish.proj | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/Publish.proj b/src/Microsoft.DotNet.Arcade.Sdk/tools/Publish.proj index b020f2cfbaf..bc149ea328f 100644 --- a/src/Microsoft.DotNet.Arcade.Sdk/tools/Publish.proj +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/Publish.proj @@ -85,7 +85,10 @@ property as it is used by other repositories already. --> BeforePublish;AutoGenerateSymbolPackages - assets/symbols/$(BUILD_REPOSITORY_NAME)/$(BUILD_BUILDNUMBER)/ + assets/symbols/ + $(SymbolPackageBaseRelativeBlobPath)$(BUILD_REPOSITORY_NAME)/ + $(SymbolPackageBaseRelativeBlobPath)$(GitHubRepositoryName)/ + $(SymbolPackageBaseRelativeBlobPath)$(BUILD_BUILDNUMBER)/ @@ -178,7 +181,7 @@ <_PackageToPublish Update="@(_PackageToPublish)"> $(SymbolPackagesDir)%(Filename).symbols.nupkg - $(SymbolPackageBaseRelativeBlobPath)/%(Filename).symbols.nupkg + $(SymbolPackageBaseRelativeBlobPath)%(Filename).symbols.nupkg <_SymbolPackageToGenerate Include="@(_PackageToPublish->'%(SymbolPackageToGenerate)')" From 298337139d7b9b4c769dd6a07d64d62999411133 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 15 Apr 2025 09:16:47 +0000 Subject: [PATCH 10/16] [main] Update dependencies from 5 repositories (#15723) Co-authored-by: dotnet-maestro[bot] Co-authored-by: Premek Vysoky --- eng/Version.Details.xml | 36 ++++++++++++++++++------------------ eng/Versions.props | 18 +++++++++--------- global.json | 4 ++-- 3 files changed, 29 insertions(+), 29 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 1fc7aaa5463..2f550378120 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -6,9 +6,9 @@ - + https://github.com/microsoft/ApplicationInsights-dotnet - 43825e06a22cdfb702fc199a7ba99a7d541d48c6 + 2faa7e8b157a431daa2e71785d68abd5fa817b53 https://github.com/dotnet/roslyn @@ -22,25 +22,25 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-symuploader d617bc8ed2787c235a57cf0dcdfd087b86ff9521 - + https://github.com/dotnet/templating - a47fb20784a5a260015d7b919c0fd42a532861d3 + 7095698ed9852bb44d33243293e4a3a31e18b103 - + https://github.com/dotnet/arcade - d33398b1de7f4fa61602fdf339f2f64e7b159326 + 5af24911dd2de348e66143167d66d05eb55a9db6 - + https://github.com/dotnet/arcade - d33398b1de7f4fa61602fdf339f2f64e7b159326 + 5af24911dd2de348e66143167d66d05eb55a9db6 - + https://github.com/dotnet/arcade-services - 30f76f71412c533d9d4519d1373eee0c0c736113 + dc6d4bae394bfb86c9fe398fa9c12ba49336a316 - + https://github.com/dotnet/arcade-services - 30f76f71412c533d9d4519d1373eee0c0c736113 + dc6d4bae394bfb86c9fe398fa9c12ba49336a316 https://github.com/dotnet/xharness @@ -132,9 +132,9 @@ ef4c24166691977558e5312758df4313ab310dc0 - + https://github.com/dotnet/arcade - d33398b1de7f4fa61602fdf339f2f64e7b159326 + 5af24911dd2de348e66143167d66d05eb55a9db6 @@ -162,15 +162,15 @@ - + https://github.com/dotnet/source-build-externals - 195acd39568d33ef6e1021c391ed3c3130f0c791 + ebe6fe9cc5b8b9c87cb218b35514bf9d04475047 - + https://github.com/dotnet/source-build-reference-packages - 8a21184a27103ca3e365b21553e32f2a1c0661d3 + 0fb2d0d836dffe32b32e362e86f0dccd6f40bee8 diff --git a/eng/Versions.props b/eng/Versions.props index 78c8e7b7baa..ac2acfcc7dd 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -23,8 +23,8 @@ 9.0.0-beta.24223.1 - 1.1.0-beta.25208.1 - 1.1.0-beta.25208.1 + 1.1.0-beta.25211.4 + 1.1.0-beta.25211.4 2.0.0-beta5.25210.1 @@ -44,11 +44,11 @@ - 6.11.0 - 6.11.0 - 6.11.0 - 6.11.0 - 6.11.0 + 6.13.2 + 6.13.2 + 6.13.2 + 6.13.2 + 6.13.2 4.8.0 4.8.0 @@ -87,7 +87,7 @@ 9.0.100-preview.6.24328.19 - 2.22.0 + 2.23.0 13.0.3 1.1.0-beta2-19575-01 @@ -95,7 +95,7 @@ 8.0.0-preview.24461.2 - 10.0.100-preview.4.25206.2 + 10.0.100-preview.4.25213.1 17.5.0 diff --git a/global.json b/global.json index 62f5de4f4d8..61f5f0c3c0e 100644 --- a/global.json +++ b/global.json @@ -7,8 +7,8 @@ "dotnet": "10.0.100-preview.3.25201.16" }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25208.5", - "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25208.5", + "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25214.8", + "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25214.8", "Microsoft.Build.NoTargets": "3.7.0" } } From ba88ae29cbb55e95c94227e01b197e0f922c8ab2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexander=20K=C3=B6plinger?= Date: Tue, 15 Apr 2025 19:27:16 +0200 Subject: [PATCH 11/16] Remove installing python in install-microbuild.yml (#15734) --- .../steps/install-microbuild.yml | 24 ------------------- 1 file changed, 24 deletions(-) diff --git a/eng/common/core-templates/steps/install-microbuild.yml b/eng/common/core-templates/steps/install-microbuild.yml index d0422085cb1..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 From 1741844bd26eb13fc4731b1e9aed218686717fbd Mon Sep 17 00:00:00 2001 From: Ella Hathaway <67609881+ellahathaway@users.noreply.github.com> Date: Tue, 15 Apr 2025 15:25:59 -0700 Subject: [PATCH 12/16] Allow for opt-out of binary log (#15748) --- eng/common/sdk-task.ps1 | 7 +++++-- eng/common/sdk-task.sh | 16 ++++++++++++++-- 2 files changed, 19 insertions(+), 4 deletions(-) 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 100755 --- 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 From 24a28c65939e71776a6a4ca81827c2c137f8212b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C5=99emek=20Vysok=C3=BD?= Date: Wed, 16 Apr 2025 12:44:29 +0200 Subject: [PATCH 13/16] Allow specifying assetless build in `jobs.yml` (#15751) --- eng/common/core-templates/jobs/jobs.yml | 4 ++++ 1 file changed, 4 insertions(+) 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 }} From 85aaca76f75b109aa45b9e949f4a1c9047725d09 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 16 Apr 2025 07:02:58 -0700 Subject: [PATCH 14/16] Don't produce an aka.ms link for productVersion.txt for .NET 10 (#15747) --- .../src/model/PublishingConstants.cs | 59 ++++++++++--------- 1 file changed, 31 insertions(+), 28 deletions(-) diff --git a/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/PublishingConstants.cs b/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/PublishingConstants.cs index 28844b27254..95728f4f5b5 100644 --- a/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/PublishingConstants.cs +++ b/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/PublishingConstants.cs @@ -339,6 +339,11 @@ public enum BuildQuality new Regex(@"wixpack", RegexOptions.IgnoreCase), ]; + private static readonly ImmutableList DotNet10AkaMSDoNotCreateLinkPatterns = [ + ..DefaultAkaMSDoNotCreateLinkPatterns, + new Regex(@"productversion", RegexOptions.IgnoreCase) + ]; + #region Target Channel Configs public static readonly List ChannelInfos = new List() { @@ -811,7 +816,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -822,7 +827,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: [ "10.0-workloads" ], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10WorkloadFeeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -833,7 +838,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: [ "10.0.1xx", "10.0" ], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -844,11 +849,9 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0.1xx-ub", "10.0-ub"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, - symbolTargetType: SymbolPublishVisibility.Public, - // Temporarily work around https://github.com/dotnet/source-build/issues/5004 - flatten: false), + symbolTargetType: SymbolPublishVisibility.Public), // .NET 10 Preview 1, new TargetChannelConfig( @@ -857,7 +860,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0-preview1"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -868,7 +871,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0-preview2"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -879,7 +882,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0-preview3"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -890,7 +893,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0-preview4"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -901,7 +904,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0-preview5"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -923,7 +926,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0-preview7"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -934,7 +937,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0-rc1"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -945,7 +948,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["internal/10.0-rc1"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10InternalFeeds, symbolTargetType: SymbolPublishVisibility.Internal), @@ -956,7 +959,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0-rc2"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -967,7 +970,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["internal/10.0-rc2"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10InternalFeeds, symbolTargetType: SymbolPublishVisibility.Internal), @@ -978,7 +981,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0.1xx-rc1"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -989,7 +992,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["internal/10.0.1xx-rc1"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10InternalFeeds, symbolTargetType: SymbolPublishVisibility.Internal), @@ -1000,7 +1003,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0.1xx-rc2"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -1011,7 +1014,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["internal/10.0.1xx-rc2"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10InternalFeeds, symbolTargetType: SymbolPublishVisibility.Internal), @@ -1022,7 +1025,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0.1xx-preview1"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -1033,7 +1036,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0.1xx-preview2"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -1044,7 +1047,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0.1xx-preview3"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -1055,7 +1058,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0.1xx-preview4"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -1066,7 +1069,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0.1xx-preview5"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -1077,7 +1080,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0.1xx-preview6"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), @@ -1088,7 +1091,7 @@ public enum BuildQuality publishingInfraVersion: PublishingInfraVersion.Latest, akaMSChannelNames: ["10.0.1xx-preview7"], akaMSCreateLinkPatterns: DefaultAkaMSCreateLinkPatterns, - akaMSDoNotCreateLinkPatterns: DefaultAkaMSDoNotCreateLinkPatterns, + akaMSDoNotCreateLinkPatterns: DotNet10AkaMSDoNotCreateLinkPatterns, targetFeeds: DotNet10Feeds, symbolTargetType: SymbolPublishVisibility.Public), From 14abacb37f7840c8996ccff99edd0fe302464c85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C5=99emek=20Vysok=C3=BD?= Date: Wed, 16 Apr 2025 16:39:58 +0200 Subject: [PATCH 15/16] Add rollback & downtime info to flat flow migration docs (#15752) --- .../UnifiedBuild/Flat-Flow-Migration-Guide.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Documentation/UnifiedBuild/Flat-Flow-Migration-Guide.md b/Documentation/UnifiedBuild/Flat-Flow-Migration-Guide.md index 44ae081a221..285861c2b80 100644 --- a/Documentation/UnifiedBuild/Flat-Flow-Migration-Guide.md +++ b/Documentation/UnifiedBuild/Flat-Flow-Migration-Guide.md @@ -185,6 +185,18 @@ graph TD The `runtime` and `arcade` dependencies will flow into `winforms` through the VMR, and the `winforms-assets` dependency will still flow directly into `winforms` (as it's not part of the VMR). The `winforms-tests` repository will newly depend on the VMR instead of `winforms` and will get its packages from the VMR. +## Potential rollback plan + +We will consider rolling back the subscription changes if we see that the codeflow PRs contain changes that don't belong there, if the backflow PRs contain unexpected changes or if we see general problems with adoption of the flat flow in the product repositories. +In such case, we will re-enable the original subscriptions and disable the codeflow ones. + +## Expected downtime + +The migration should happen within few (<4) hours after which we will keep monitoring all the dependency PRs in the product repositories. +Developers can keep merging code as usual during this time and their productivity should not be affected. +The only affected process will be the current VMR one-way synchronization which will be disabled at the begining of the migration. +We also expect potential minor problems in PRs against the `main` branch of `dotnet/sdk` which might need to be rebased on top of `main` again to pick up new infrastructural changes in that repo. + ## FAQ ### How can I see dependency subscriptions for my repository? From 76dd1b4eb3b15881da350de93805ea6ab936364c Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 17 Apr 2025 09:39:02 +0000 Subject: [PATCH 16/16] [main] Update dependencies from dotnet/arcade, dotnet/arcade-services, dotnet/source-build-reference-packages, dotnet/templating (#15750) [main] Update dependencies from dotnet/arcade, dotnet/arcade-services, dotnet/source-build-reference-packages, dotnet/templating --- eng/Version.Details.xml | 28 ++++++++++++++-------------- eng/Versions.props | 6 +++--- global.json | 4 ++-- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 2f550378120..6cad428fd2f 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -22,25 +22,25 @@ https://dev.azure.com/dnceng/internal/_git/dotnet-symuploader d617bc8ed2787c235a57cf0dcdfd087b86ff9521 - + https://github.com/dotnet/templating - 7095698ed9852bb44d33243293e4a3a31e18b103 + af563dedf99dc8a9a48fa51d0fe8c3c0c8cfb42c - + https://github.com/dotnet/arcade - 5af24911dd2de348e66143167d66d05eb55a9db6 + 85aaca76f75b109aa45b9e949f4a1c9047725d09 - + https://github.com/dotnet/arcade - 5af24911dd2de348e66143167d66d05eb55a9db6 + 85aaca76f75b109aa45b9e949f4a1c9047725d09 - + https://github.com/dotnet/arcade-services - dc6d4bae394bfb86c9fe398fa9c12ba49336a316 + 12325350db8e98fdc95a6506e4afcef7a4cbb62e - + https://github.com/dotnet/arcade-services - dc6d4bae394bfb86c9fe398fa9c12ba49336a316 + 12325350db8e98fdc95a6506e4afcef7a4cbb62e https://github.com/dotnet/xharness @@ -132,9 +132,9 @@ ef4c24166691977558e5312758df4313ab310dc0 - + https://github.com/dotnet/arcade - 5af24911dd2de348e66143167d66d05eb55a9db6 + 85aaca76f75b109aa45b9e949f4a1c9047725d09 @@ -168,9 +168,9 @@ - + https://github.com/dotnet/source-build-reference-packages - 0fb2d0d836dffe32b32e362e86f0dccd6f40bee8 + 432b22e3cdaf69c011358a44e61959769b2f607c diff --git a/eng/Versions.props b/eng/Versions.props index ac2acfcc7dd..fb9cc43c296 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -23,8 +23,8 @@ 9.0.0-beta.24223.1 - 1.1.0-beta.25211.4 - 1.1.0-beta.25211.4 + 1.1.0-beta.25216.6 + 1.1.0-beta.25216.6 2.0.0-beta5.25210.1 @@ -95,7 +95,7 @@ 8.0.0-preview.24461.2 - 10.0.100-preview.4.25213.1 + 10.0.100-preview.4.25217.1 17.5.0 diff --git a/global.json b/global.json index 61f5f0c3c0e..c5b1460b036 100644 --- a/global.json +++ b/global.json @@ -7,8 +7,8 @@ "dotnet": "10.0.100-preview.3.25201.16" }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25214.8", - "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25214.8", + "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25216.2", + "Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25216.2", "Microsoft.Build.NoTargets": "3.7.0" } }