Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove SAS support in arcade publishing #14938

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -107,12 +107,6 @@

<ItemGroup>
<FeedKey Include="https://pkgs.dev.azure.com/dnceng" Key="$(AzureDevOpsFeedsKey)"/>
<FeedSasUri Include="$(ChecksumsFeedOverride)" Base64Uri="$(ChecksumsFeedBase64SasUri)" Condition="'$(ChecksumsFeedOverride)' != ''"/>
<FeedSasUri Include="$(InstallersFeedOverride)" Base64Uri="$(InstallersFeedBase64SasUri)" Condition="'$(InstallersFeedOverride)' != ''"/>
<FeedSasUri Include="https://dotnetbuilds.blob.core.windows.net/public" Base64Uri="$(DotNetBuildsPublicUriBase64)"/>
<FeedSasUri Include="https://dotnetbuilds.blob.core.windows.net/public-checksums" Base64Uri="$(DotNetBuildsPublicChecksumsUriBase64)"/>
<FeedSasUri Include="https://dotnetbuilds.blob.core.windows.net/internal" Base64Uri="$(DotNetBuildsInternalUriBase64)"/>
<FeedSasUri Include="https://dotnetbuilds.blob.core.windows.net/internal-checksums" Base64Uri="$(DotNetBuildsInternalChecksumsUriBase64)"/>
<FeedOverride Include="https://dotnetbuilds.blob.core.windows.net/public-checksums" Replacement="$(ChecksumsFeedOverride)" Condition="'$(ChecksumsFeedOverride)' != ''"/>
<FeedOverride Include="https://dotnetbuilds.blob.core.windows.net/public" Replacement="$(InstallersFeedOverride)" Condition="'$(InstallersFeedOverride)' != ''"/>
<FeedOverride Include="https://dotnetbuilds.blob.core.windows.net/internal-checksums" Replacement="$(ChecksumsFeedOverride)" Condition="'$(ChecksumsFeedOverride)' != ''"/>
Expand Down Expand Up @@ -164,7 +158,6 @@
StreamingPublishingMaxClients="$(StreamingPublishingMaxClients)"
NonStreamingPublishingMaxClients="$(NonStreamingPublishingMaxClients)"
FeedKeys="@(FeedKey)"
FeedSasUris="@(FeedSasUri)"
FeedOverrides="@(FeedOverride)"
/>
</Target>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,6 @@ public void StableFeeds(bool publishInstallersAndChecksums, bool isInternalBuild
publishInstallersAndChecksums,
FeedKeys,
Array.Empty<ITaskItem>(),
Array.Empty<ITaskItem>(),
new List<string>() { $"{LatestLinkShortUrlPrefix}/{BuildQuality}" },
buildEngine,
symbolVisibility,
Expand Down Expand Up @@ -289,7 +288,6 @@ public void NonStableAndInternal(bool publishInstallersAndChecksums)
publishInstallersAndChecksums,
FeedKeys,
Array.Empty<ITaskItem>(),
Array.Empty<ITaskItem>(),
latestLinkShortUrlPrefixes: new List<string>() { $"{LatestLinkShortUrlPrefix}/{BuildQuality}" },
buildEngine: buildEngine,
symbolVisibility,
Expand Down Expand Up @@ -397,7 +395,6 @@ public void NonStableAndPublic(bool publishInstallersAndChecksums)
publishInstallersAndChecksums,
FeedKeys,
Array.Empty<ITaskItem>(),
Array.Empty<ITaskItem>(),
latestLinkShortUrlPrefixes: new List<string>() { $"{LatestLinkShortUrlPrefix}/{BuildQuality}" },
buildEngine: buildEngine,
symbolVisibility,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,6 @@
<Compile Remove="src\AzureDevOpsFeedPermission.cs" />
<Compile Remove="src\AzureDevOpsNugetFeedAssetPublisher.cs" />
<Compile Remove="src\AzureStorageAssetPublisher.cs" />
<Compile Remove="src\AzureStorageContainerAssetSasCredentialPublisher.cs" />
<Compile Remove="src\AzureStorageContainerAssetTokenCredentialPublisher.cs" />
<Compile Remove="src\AzureStorageExtensions.cs" />
<Compile Remove="src\BlobFeedAction.cs" />
Expand Down
19 changes: 4 additions & 15 deletions src/Microsoft.DotNet.Build.Tasks.Feed/src/AssetPublisherFactory.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,21 +28,10 @@ public virtual IAssetPublisher CreateAssetPublisher(TargetFeedConfig feedConfig,
case FeedType.AzDoNugetFeed:
return new AzureDevOpsNugetFeedAssetPublisher(_log, feedConfig.TargetURL, feedConfig.Token, task);
case FeedType.AzureStorageContainer:
// If there is a SAS URI specified, use that. Otherwise use the default azure credential
if (!string.IsNullOrEmpty(feedConfig.Token))
{
return new AzureStorageContainerAssetSasCredentialPublisher(
new Uri(feedConfig.TargetURL),
new AzureSasCredential(new Uri(feedConfig.Token).Query),
_log);
}
else
{
return new AzureStorageContainerAssetTokenCredentialPublisher(
new Uri(feedConfig.TargetURL),
GetAzureTokenCredential(task.ManagedIdentityClientId),
_log);
}
return new AzureStorageContainerAssetTokenCredentialPublisher(
new Uri(feedConfig.TargetURL),
GetAzureTokenCredential(task.ManagedIdentityClientId),
_log);
default:
throw new NotImplementedException();
}
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,6 @@ public class PublishArtifactsInManifest : MSBuildTaskBase
public bool AllowFeedOverrides { get; set; }

public ITaskItem[] FeedKeys { get; set; }
public ITaskItem[] FeedSasUris { get; set; }

public ITaskItem[] FeedOverrides { get; set; }

Expand Down Expand Up @@ -373,7 +372,6 @@ internal PublishArtifactsInManifestBase ConstructPublishingV3Task(BuildModel bui
ManagedIdentityClientId = this.ManagedIdentityClientId,
PublishInstallersAndChecksums = this.PublishInstallersAndChecksums,
FeedKeys = this.FeedKeys,
FeedSasUris = this.FeedSasUris,
FeedOverrides = this.FeedOverrides,
AllowFeedOverrides = this.AllowFeedOverrides,
PdbArtifactsBasePath = this.PdbArtifactsBasePath,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@ public class PublishArtifactsInManifestV3 : PublishArtifactsInManifestBase
public bool AllowFeedOverrides { get; set; }

public ITaskItem[] FeedKeys { get; set; }
public ITaskItem[] FeedSasUris { get; set; }

public ITaskItem[] FeedOverrides { get; set; }

Expand Down Expand Up @@ -149,7 +148,6 @@ public override async Task<bool> ExecuteAsync()
commitSha: BuildModel.Identity.Commit,
publishInstallersAndChecksums: PublishInstallersAndChecksums,
feedKeys: FeedKeys,
feedSasUris: FeedSasUris,
feedOverrides: AllowFeedOverrides ? FeedOverrides : Array.Empty<ITaskItem>(),
latestLinkShortUrlPrefixes: shortLinkUrls,
buildEngine: BuildEngine,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@ public SetupTargetFeedConfigV3(
string commitSha,
bool publishInstallersAndChecksums,
ITaskItem[] feedKeys,
ITaskItem[] feedSasUris,
ITaskItem[] feedOverrides,
List<string> latestLinkShortUrlPrefixes,
IBuildEngine buildEngine,
Expand All @@ -60,7 +59,6 @@ public SetupTargetFeedConfigV3(
FilesToExclude = filesToExclude ?? ImmutableList<string>.Empty;
Flatten = flatten;
FeedKeys = feedKeys.ToImmutableDictionary(i => i.ItemSpec, i => i.GetMetadata("Key"));
FeedSasUris = feedSasUris.ToImmutableDictionary(i => i.ItemSpec, i => ConvertFromBase64(i.GetMetadata("Base64Uri")));
FeedOverrides = feedOverrides.ToImmutableDictionary(i => i.ItemSpec, i => i.GetMetadata("Replacement"));
AzureDevOpsFeedsKey = FeedKeys.TryGetValue("https://pkgs.dev.azure.com/dnceng", out string key) ? key : null;
Log = log;
Expand All @@ -77,8 +75,6 @@ private static string ConvertFromBase64(string value)

public ImmutableDictionary<string, string> FeedOverrides { get; set; }

public ImmutableDictionary<string, string> FeedSasUris { get; set; }

public ImmutableDictionary<string, string> FeedKeys { get; set; }

public override List<TargetFeedConfig> Setup()
Expand Down Expand Up @@ -157,7 +153,6 @@ private IEnumerable<TargetFeedConfig> Feeds()
feed = newFeed;
}
var key = GetFeedKey(feed);
var sasUri = GetFeedSasUri(feed);

var feedType = feed.StartsWith("https://pkgs.dev.azure.com")
? FeedType.AzDoNugetFeed : FeedType.AzureStorageContainer;
Expand All @@ -173,7 +168,7 @@ private IEnumerable<TargetFeedConfig> Feeds()
type,
feed,
feedType,
sasUri ?? key,
key,
LatestLinkShortUrlPrefixes,
spec.Assets,
false,
Expand Down Expand Up @@ -255,19 +250,6 @@ private string GetFeedOverride(string feed)
return feed;
}

private string GetFeedSasUri(string feed)
{
foreach (var prefix in FeedSasUris.Keys.OrderByDescending(f => f.Length))
{
if (feed.StartsWith(prefix, StringComparison.OrdinalIgnoreCase))
{
return FeedSasUris[prefix];
}
}

return null;
}

private string GetFeedKey(string feed)
{
foreach (var prefix in FeedKeys.Keys.OrderByDescending(f => f.Length))
Expand Down
Loading