diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/SdkTasks/PublishArtifactsInManifest.proj b/src/Microsoft.DotNet.Arcade.Sdk/tools/SdkTasks/PublishArtifactsInManifest.proj index 28d23ef95c2..fa4778f6aea 100644 --- a/src/Microsoft.DotNet.Arcade.Sdk/tools/SdkTasks/PublishArtifactsInManifest.proj +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/SdkTasks/PublishArtifactsInManifest.proj @@ -154,6 +154,7 @@ TransportFeedOverride="$(TransportFeedOverride)" ShippingFeedOverride="$(ShippingFeedOverride)" SymbolsFeedOverride="$(SymbolsFeedOverride)" + PublicSymbolsFeedOverride="$(PublicSymbolsFeedOverride)" AzdoApiToken="$(AzdoApiToken)" ArtifactsBasePath="$(ArtifactsBasePath)" BuildId="$(BuildId)" diff --git a/src/Microsoft.DotNet.Build.Tasks.Feed/src/PublishArtifactsInManifest.cs b/src/Microsoft.DotNet.Build.Tasks.Feed/src/PublishArtifactsInManifest.cs index ee706c1efc0..0cdbd667c59 100644 --- a/src/Microsoft.DotNet.Build.Tasks.Feed/src/PublishArtifactsInManifest.cs +++ b/src/Microsoft.DotNet.Build.Tasks.Feed/src/PublishArtifactsInManifest.cs @@ -129,6 +129,8 @@ public class PublishArtifactsInManifest : MSBuildTaskBase public string SymbolsFeedOverride { get; set; } + public string PublicSymbolsFeedOverride { get; set; } + /// /// Path to dll and pdb files /// @@ -381,6 +383,7 @@ internal PublishArtifactsInManifestBase ConstructPublishingV3Task(BuildModel bui ShippingFeedOverride = this.ShippingFeedOverride, TransportFeedOverride = this.TransportFeedOverride, SymbolsFeedOverride = this.SymbolsFeedOverride, + PublicSymbolsFeedOverride = this.PublicSymbolsFeedOverride, ArtifactsBasePath = this.ArtifactsBasePath, AzdoApiToken = this.AzdoApiToken, BuildId = this.BuildId, diff --git a/src/Microsoft.DotNet.Build.Tasks.Feed/src/PublishArtifactsInManifestV3.cs b/src/Microsoft.DotNet.Build.Tasks.Feed/src/PublishArtifactsInManifestV3.cs index c9f2e7a0610..1f8f61d3f2c 100644 --- a/src/Microsoft.DotNet.Build.Tasks.Feed/src/PublishArtifactsInManifestV3.cs +++ b/src/Microsoft.DotNet.Build.Tasks.Feed/src/PublishArtifactsInManifestV3.cs @@ -64,6 +64,8 @@ public class PublishArtifactsInManifestV3 : PublishArtifactsInManifestBase public string SymbolsFeedOverride { get; set; } + public string PublicSymbolsFeedOverride { get; set; } + public override bool Execute() { ExecuteAsync().GetAwaiter().GetResult(); @@ -160,6 +162,7 @@ public override async Task ExecuteAsync() AzureDevOpsFeedsKey, BuildEngine = this.BuildEngine, targetChannelConfig.SymbolTargetType, + azureDevOpsPublicStaticSymbolsFeed: GetFeed(null, PublicSymbolsFeedOverride), filesToExclude: targetChannelConfig.FilenamesToExclude, flatten: targetChannelConfig.Flatten); 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 58eb22fb996..b98e91740c4 100644 --- a/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/SetupTargetFeedConfigV3.cs +++ b/src/Microsoft.DotNet.Build.Tasks.Feed/src/model/SetupTargetFeedConfigV3.cs @@ -29,6 +29,8 @@ public class SetupTargetFeedConfigV3 : SetupTargetFeedConfigBase private string StableSymbolsFeed { get; set; } + private string AzureDevOpsPublicStaticSymbolsFeed { get; set; } + private SymbolTargetType SymbolTargetType { get; set; } private List FilesToExclude { get; } @@ -54,6 +56,7 @@ public SetupTargetFeedConfigV3(bool isInternalBuild, SymbolTargetType symbolTargetType, string stablePackagesFeed = null, string stableSymbolsFeed = null, + string azureDevOpsPublicStaticSymbolsFeed = null, List filesToExclude = null, bool flatten = true) : base(isInternalBuild, isStableBuild, repositoryName, commitSha, azureStorageTargetFeedPAT, publishInstallersAndChecksums, installersTargetStaticFeed, installersAzureAccountKey, checksumsTargetStaticFeed, checksumsAzureAccountKey, azureDevOpsStaticShippingFeed, azureDevOpsStaticTransportFeed, azureDevOpsStaticSymbolsFeed, latestLinkShortUrlPrefix, azureDevOpsFeedsKey) @@ -62,6 +65,7 @@ public SetupTargetFeedConfigV3(bool isInternalBuild, StableSymbolsFeed = stableSymbolsFeed; StablePackagesFeed = stablePackagesFeed; SymbolTargetType = symbolTargetType; + AzureDevOpsPublicStaticSymbolsFeed = azureDevOpsPublicStaticSymbolsFeed; FilesToExclude = filesToExclude ?? new List(); Flatten = flatten; } @@ -159,6 +163,12 @@ private List NonStableFeeds() symbolsFeedType = FeedType.AzDoNugetFeed; symbolsFeedSecret = AzureDevOpsFeedsKey; } + else if (!string.IsNullOrEmpty(AzureDevOpsPublicStaticSymbolsFeed)) + { + symbolsFeed = AzureDevOpsPublicStaticSymbolsFeed; + symbolsFeedType = FeedType.AzDoNugetFeed; + symbolsFeedSecret = AzureDevOpsFeedsKey; + } else { symbolsFeed = PublishingConstants.LegacyDotNetBlobFeedURL;