From 9161f2fe42b210052774a80a130f59b8619ecba0 Mon Sep 17 00:00:00 2001 From: Amanda Nguyen <48961492+amnguye@users.noreply.github.com> Date: Wed, 26 Feb 2025 12:26:13 -0800 Subject: [PATCH] [Storage] [DataMovement] Added back default constructors for ResourceProviders for Anonymous Access (#48438) * Added back default constructors for StorageResourceProviders to support Anonymous acces * Removed comment about static call for FromClient * Rerecord test to avoid 500 recordings in net-pullrequest * Trying to rerecord different tests * bumped version to 12.1.0 --- .../CHANGELOG.md | 5 +- ...Azure.Storage.DataMovement.Blobs.net6.0.cs | 1 + ...Azure.Storage.DataMovement.Blobs.net8.0.cs | 1 + ...orage.DataMovement.Blobs.netstandard2.0.cs | 1 + .../Azure.Storage.DataMovement.Blobs.csproj | 2 +- .../src/BlobsStorageResourceProvider.cs | 16 ++ .../BlobsStorageResourceProviderTests.cs | 12 +- .../CHANGELOG.md | 5 +- ...torage.DataMovement.Files.Shares.net6.0.cs | 1 + ...torage.DataMovement.Files.Shares.net8.0.cs | 1 + ...ataMovement.Files.Shares.netstandard2.0.cs | 1 + .../assets.json | 2 +- ...e.Storage.DataMovement.Files.Shares.csproj | 2 +- .../src/ShareFilesStorageResourceProvider.cs | 16 ++ .../ShareFilesStorageResourceProviderTests.cs | 160 ++++++++++++++++++ .../Azure.Storage.DataMovement/CHANGELOG.md | 2 +- .../src/Azure.Storage.DataMovement.csproj | 2 +- .../src/AssemblyInfo.cs | 6 + 18 files changed, 227 insertions(+), 9 deletions(-) create mode 100644 sdk/storage/Azure.Storage.DataMovement.Files.Shares/tests/ShareFilesStorageResourceProviderTests.cs diff --git a/sdk/storage/Azure.Storage.DataMovement.Blobs/CHANGELOG.md b/sdk/storage/Azure.Storage.DataMovement.Blobs/CHANGELOG.md index b26fc7456219..f94e4f510d18 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Blobs/CHANGELOG.md +++ b/sdk/storage/Azure.Storage.DataMovement.Blobs/CHANGELOG.md @@ -1,6 +1,9 @@ # Release History -## 12.0.1 (Unreleased) +## 12.1.0 (Unreleased) + +### Features Added +- Added support for anonymous access by adding a default constructor for `BlobsStorageResourceProvider`. ### Bugs Fixed - Fixed an issue that would prevent transfers of large files (>200 GiB) for certain destination resource types. diff --git a/sdk/storage/Azure.Storage.DataMovement.Blobs/api/Azure.Storage.DataMovement.Blobs.net6.0.cs b/sdk/storage/Azure.Storage.DataMovement.Blobs/api/Azure.Storage.DataMovement.Blobs.net6.0.cs index cd7c8ddb23d1..e04ee6ebb2fe 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Blobs/api/Azure.Storage.DataMovement.Blobs.net6.0.cs +++ b/sdk/storage/Azure.Storage.DataMovement.Blobs/api/Azure.Storage.DataMovement.Blobs.net6.0.cs @@ -24,6 +24,7 @@ public BlobContainerClientTransferOptions() { } } public partial class BlobsStorageResourceProvider : Azure.Storage.DataMovement.StorageResourceProvider { + public BlobsStorageResourceProvider() { } public BlobsStorageResourceProvider(Azure.AzureSasCredential credential) { } public BlobsStorageResourceProvider(Azure.Core.TokenCredential credential) { } public BlobsStorageResourceProvider(Azure.Storage.StorageSharedKeyCredential credential) { } diff --git a/sdk/storage/Azure.Storage.DataMovement.Blobs/api/Azure.Storage.DataMovement.Blobs.net8.0.cs b/sdk/storage/Azure.Storage.DataMovement.Blobs/api/Azure.Storage.DataMovement.Blobs.net8.0.cs index cd7c8ddb23d1..e04ee6ebb2fe 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Blobs/api/Azure.Storage.DataMovement.Blobs.net8.0.cs +++ b/sdk/storage/Azure.Storage.DataMovement.Blobs/api/Azure.Storage.DataMovement.Blobs.net8.0.cs @@ -24,6 +24,7 @@ public BlobContainerClientTransferOptions() { } } public partial class BlobsStorageResourceProvider : Azure.Storage.DataMovement.StorageResourceProvider { + public BlobsStorageResourceProvider() { } public BlobsStorageResourceProvider(Azure.AzureSasCredential credential) { } public BlobsStorageResourceProvider(Azure.Core.TokenCredential credential) { } public BlobsStorageResourceProvider(Azure.Storage.StorageSharedKeyCredential credential) { } diff --git a/sdk/storage/Azure.Storage.DataMovement.Blobs/api/Azure.Storage.DataMovement.Blobs.netstandard2.0.cs b/sdk/storage/Azure.Storage.DataMovement.Blobs/api/Azure.Storage.DataMovement.Blobs.netstandard2.0.cs index cd7c8ddb23d1..e04ee6ebb2fe 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Blobs/api/Azure.Storage.DataMovement.Blobs.netstandard2.0.cs +++ b/sdk/storage/Azure.Storage.DataMovement.Blobs/api/Azure.Storage.DataMovement.Blobs.netstandard2.0.cs @@ -24,6 +24,7 @@ public BlobContainerClientTransferOptions() { } } public partial class BlobsStorageResourceProvider : Azure.Storage.DataMovement.StorageResourceProvider { + public BlobsStorageResourceProvider() { } public BlobsStorageResourceProvider(Azure.AzureSasCredential credential) { } public BlobsStorageResourceProvider(Azure.Core.TokenCredential credential) { } public BlobsStorageResourceProvider(Azure.Storage.StorageSharedKeyCredential credential) { } diff --git a/sdk/storage/Azure.Storage.DataMovement.Blobs/src/Azure.Storage.DataMovement.Blobs.csproj b/sdk/storage/Azure.Storage.DataMovement.Blobs/src/Azure.Storage.DataMovement.Blobs.csproj index 9003bc57a21d..5a4541f3d2f3 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Blobs/src/Azure.Storage.DataMovement.Blobs.csproj +++ b/sdk/storage/Azure.Storage.DataMovement.Blobs/src/Azure.Storage.DataMovement.Blobs.csproj @@ -5,7 +5,7 @@ Microsoft Azure.Storage.DataMovement.Blobs client library - 12.0.1 + 12.1.0 12.0.0 BlobDataMovementSDK;$(DefineConstants) diff --git a/sdk/storage/Azure.Storage.DataMovement.Blobs/src/BlobsStorageResourceProvider.cs b/sdk/storage/Azure.Storage.DataMovement.Blobs/src/BlobsStorageResourceProvider.cs index 0f69b65675ae..3279b13e6e5b 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Blobs/src/BlobsStorageResourceProvider.cs +++ b/sdk/storage/Azure.Storage.DataMovement.Blobs/src/BlobsStorageResourceProvider.cs @@ -43,6 +43,22 @@ private enum CredentialType private readonly Func> _getStorageSharedKeyCredential; private readonly Func> _getAzureSasCredential; + /// + /// + /// Constructs this provider to use no credentials when making a new Blob Storage + /// . + /// + /// + /// This instance will NOT use any credential when constructing the underlying + /// Azure.Storage.Blobs client, e.g. . + /// This is for the purpose of either anonymous access when constructing the client. + /// + /// + public BlobsStorageResourceProvider() + { + _credentialType = CredentialType.None; + } + /// /// /// Constructs this provider to use the given credential when making a new Blob Storage diff --git a/sdk/storage/Azure.Storage.DataMovement.Blobs/tests/BlobsStorageResourceProviderTests.cs b/sdk/storage/Azure.Storage.DataMovement.Blobs/tests/BlobsStorageResourceProviderTests.cs index 1471a649c716..fc2253c23ca6 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Blobs/tests/BlobsStorageResourceProviderTests.cs +++ b/sdk/storage/Azure.Storage.DataMovement.Blobs/tests/BlobsStorageResourceProviderTests.cs @@ -21,6 +21,7 @@ public class BlobsStorageResourceProviderTests { public enum CredType { + None, SharedKey, Token, Sas @@ -53,6 +54,11 @@ private void AssertCredPresent(BlobClientConfiguration clientConfig, CredType cr Assert.IsNull(clientConfig.TokenCredential); Assert.IsNotNull(clientConfig.SasCredential); break; + case CredType.None: + Assert.IsNull(clientConfig.SharedKeyCredential); + Assert.IsNull(clientConfig.TokenCredential); + Assert.IsNull(clientConfig.SasCredential); + break; default: throw new ArgumentException("No assertion support for cred type " + credType.ToString()); } @@ -102,7 +108,7 @@ private void AssertBlobStorageResourceType( [Combinatorial] public async Task FromContainer( [Values(true, false)] bool withPrefix, - [Values(CredType.SharedKey, CredType.Token, CredType.Sas)] CredType credType) + [Values(CredType.SharedKey, CredType.Token, CredType.Sas, CredType.None)] CredType credType) { const string containerName = "mycontainer"; const string prefix = "my/prefix"; @@ -114,6 +120,7 @@ public async Task FromContainer( CredType.SharedKey => new(mockCreds.SharedKey.Object), CredType.Token => new(mockCreds.Token.Object), CredType.Sas => new(mockCreds.Sas.Object), + CredType.None => new(), _ => throw new ArgumentException("Bad cred type"), }; BlobStorageResourceContainer resource = await provider.FromContainerAsync(uri) as BlobStorageResourceContainer; @@ -128,7 +135,7 @@ public async Task FromContainer( [Combinatorial] public async Task FromBlob( [Values(BlobType.Unspecified, BlobType.Block, BlobType.Page, BlobType.Append)] BlobType blobType, - [Values(CredType.SharedKey, CredType.Token, CredType.Sas)] CredType credType) + [Values(CredType.SharedKey, CredType.Token, CredType.Sas, CredType.None)] CredType credType) { const string containerName = "mycontainer"; const string blobName = "my/blob.txt"; @@ -140,6 +147,7 @@ public async Task FromBlob( CredType.SharedKey => new(mockCreds.SharedKey.Object), CredType.Token => new(mockCreds.Token.Object), CredType.Sas => new(mockCreds.Sas.Object), + CredType.None => new(), _ => throw new ArgumentException("Bad cred type"), }; diff --git a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/CHANGELOG.md b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/CHANGELOG.md index a3ec03bf7b48..e80d2bf30948 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/CHANGELOG.md +++ b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/CHANGELOG.md @@ -1,6 +1,9 @@ # Release History -## 12.0.1 (Unreleased) +## 12.1.0 (Unreleased) + +### Features added +- Added support for anonymous access by adding a default constructor for `ShareFilesStorageResourceProvider`. ### Bugs Fixed - Fixed an issue that would prevent transfers of large files (>200 GiB) for certain destination resource types. diff --git a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/api/Azure.Storage.DataMovement.Files.Shares.net6.0.cs b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/api/Azure.Storage.DataMovement.Files.Shares.net6.0.cs index bc3864e92c26..6988c5d6ebe8 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/api/Azure.Storage.DataMovement.Files.Shares.net6.0.cs +++ b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/api/Azure.Storage.DataMovement.Files.Shares.net6.0.cs @@ -8,6 +8,7 @@ public ShareDirectoryClientTransferOptions() { } } public partial class ShareFilesStorageResourceProvider : Azure.Storage.DataMovement.StorageResourceProvider { + public ShareFilesStorageResourceProvider() { } public ShareFilesStorageResourceProvider(Azure.AzureSasCredential credential) { } public ShareFilesStorageResourceProvider(Azure.Core.TokenCredential credential) { } public ShareFilesStorageResourceProvider(Azure.Storage.StorageSharedKeyCredential credential) { } diff --git a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/api/Azure.Storage.DataMovement.Files.Shares.net8.0.cs b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/api/Azure.Storage.DataMovement.Files.Shares.net8.0.cs index bc3864e92c26..6988c5d6ebe8 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/api/Azure.Storage.DataMovement.Files.Shares.net8.0.cs +++ b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/api/Azure.Storage.DataMovement.Files.Shares.net8.0.cs @@ -8,6 +8,7 @@ public ShareDirectoryClientTransferOptions() { } } public partial class ShareFilesStorageResourceProvider : Azure.Storage.DataMovement.StorageResourceProvider { + public ShareFilesStorageResourceProvider() { } public ShareFilesStorageResourceProvider(Azure.AzureSasCredential credential) { } public ShareFilesStorageResourceProvider(Azure.Core.TokenCredential credential) { } public ShareFilesStorageResourceProvider(Azure.Storage.StorageSharedKeyCredential credential) { } diff --git a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/api/Azure.Storage.DataMovement.Files.Shares.netstandard2.0.cs b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/api/Azure.Storage.DataMovement.Files.Shares.netstandard2.0.cs index bc3864e92c26..6988c5d6ebe8 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/api/Azure.Storage.DataMovement.Files.Shares.netstandard2.0.cs +++ b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/api/Azure.Storage.DataMovement.Files.Shares.netstandard2.0.cs @@ -8,6 +8,7 @@ public ShareDirectoryClientTransferOptions() { } } public partial class ShareFilesStorageResourceProvider : Azure.Storage.DataMovement.StorageResourceProvider { + public ShareFilesStorageResourceProvider() { } public ShareFilesStorageResourceProvider(Azure.AzureSasCredential credential) { } public ShareFilesStorageResourceProvider(Azure.Core.TokenCredential credential) { } public ShareFilesStorageResourceProvider(Azure.Storage.StorageSharedKeyCredential credential) { } diff --git a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/assets.json b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/assets.json index 7fa376b1a1a4..50ab5935f567 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/assets.json +++ b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/assets.json @@ -2,5 +2,5 @@ "AssetsRepo": "Azure/azure-sdk-assets", "AssetsRepoPrefixPath": "net", "TagPrefix": "net/storage/Azure.Storage.DataMovement.Files.Shares", - "Tag": "net/storage/Azure.Storage.DataMovement.Files.Shares_88bb7c0e4a" + "Tag": "net/storage/Azure.Storage.DataMovement.Files.Shares_ed3312eb08" } diff --git a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/src/Azure.Storage.DataMovement.Files.Shares.csproj b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/src/Azure.Storage.DataMovement.Files.Shares.csproj index 3b9cdd154b63..c9e4b7bb1937 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/src/Azure.Storage.DataMovement.Files.Shares.csproj +++ b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/src/Azure.Storage.DataMovement.Files.Shares.csproj @@ -6,7 +6,7 @@ Microsoft Azure.Storage.DataMovement.Files.Shares client library - 12.0.1 + 12.1.0 12.0.0 ShareDataMovementSDK;$(DefineConstants) diff --git a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/src/ShareFilesStorageResourceProvider.cs b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/src/ShareFilesStorageResourceProvider.cs index ab1dbf9455d6..791e1733c674 100644 --- a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/src/ShareFilesStorageResourceProvider.cs +++ b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/src/ShareFilesStorageResourceProvider.cs @@ -42,6 +42,22 @@ private enum CredentialType private readonly Func> _getAzureSasCredential; #region ctors + /// + /// + /// Constructs this provider to use no credentials when making a new Blob Storage + /// . + /// + /// + /// This instance will NOT use any credential when constructing the underlying + /// Azure.Storage.Blobs client, e.g. . + /// This is for the purpose of either anonymous access when constructing the client. + /// + /// + public ShareFilesStorageResourceProvider() + { + _credentialType = CredentialType.None; + } + /// /// /// Constructs this provider to use the given credential when making a new File Share diff --git a/sdk/storage/Azure.Storage.DataMovement.Files.Shares/tests/ShareFilesStorageResourceProviderTests.cs b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/tests/ShareFilesStorageResourceProviderTests.cs new file mode 100644 index 000000000000..3b6ce6a4559d --- /dev/null +++ b/sdk/storage/Azure.Storage.DataMovement.Files.Shares/tests/ShareFilesStorageResourceProviderTests.cs @@ -0,0 +1,160 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +extern alias DMShare; +extern alias BaseShares; + +using System; +using Azure.Core; +using BaseShares::Azure.Storage.Files.Shares; +using Azure.Storage.Tests; +using DMShare::Azure.Storage.DataMovement.Files.Shares; +using Moq; +using NUnit.Framework; +using System.Threading.Tasks; +using System.Threading; + +namespace Azure.Storage.DataMovement.Files.Shares.Tests +{ + public class ShareFilesStorageResourceProviderTests + { + public enum CredType + { + None, + SharedKey, + Token, + Sas + } + + private void AssertCredPresent(ShareClientConfiguration clientConfig, CredType credType) + { + Assert.IsNotNull(clientConfig); + switch (credType) + { + case CredType.SharedKey: + Assert.IsNotNull(clientConfig.SharedKeyCredential); + Assert.IsNull(clientConfig.TokenCredential); + Assert.IsNull(clientConfig.SasCredential); + break; + case CredType.Token: + Assert.IsNull(clientConfig.SharedKeyCredential); + Assert.IsNotNull(clientConfig.TokenCredential); + Assert.IsNull(clientConfig.SasCredential); + break; + case CredType.Sas: + Assert.IsNull(clientConfig.SharedKeyCredential); + Assert.IsNull(clientConfig.TokenCredential); + Assert.IsNotNull(clientConfig.SasCredential); + break; + case CredType.None: + Assert.IsNull(clientConfig.SharedKeyCredential); + Assert.IsNull(clientConfig.TokenCredential); + Assert.IsNull(clientConfig.SasCredential); + break; + default: + throw new ArgumentException("No assertion support for cred type " + credType.ToString()); + } + } + + private (Mock SharedKey, Mock Token, Mock Sas) GetMockCreds() + { + return ( + new Mock("myaccount", new Random().NextBase64(64)), + new Mock(), + new Mock("mysignature")); + } + + [Test] + [Combinatorial] + public async Task FromDirectoryAsync( + [Values(true, false)] bool withPrefix, + [Values(CredType.SharedKey, CredType.Token, CredType.Sas, CredType.None)] CredType credType) + { + const string containerName = "mycontainer"; + const string prefix = "my/prefix"; + Uri uri = new Uri($"https://myaccount.blob.core.windows.net/{containerName}" + (withPrefix ? $"/{prefix}" : "")); + (Mock SharedKey, Mock Token, Mock Sas) mockCreds = GetMockCreds(); + + ShareFilesStorageResourceProvider provider = credType switch + { + CredType.SharedKey => new(mockCreds.SharedKey.Object), + CredType.Token => new(mockCreds.Token.Object), + CredType.Sas => new(mockCreds.Sas.Object), + CredType.None => new(), + _ => throw new ArgumentException("Bad cred type"), + }; + ShareDirectoryStorageResourceContainer resource = await provider.FromDirectoryAsync(uri) as ShareDirectoryStorageResourceContainer; + + Assert.IsNotNull(resource); + Assert.IsNotNull(resource.ShareDirectoryClient); + Assert.AreEqual(uri, resource.Uri); + Assert.AreEqual(uri, resource.ShareDirectoryClient.Uri); + AssertCredPresent(resource.ShareDirectoryClient.ClientConfiguration, credType); + } + + [Test] + [Combinatorial] + public async Task FromFileAsync( + [Values(CredType.SharedKey, CredType.Token, CredType.Sas, CredType.None)] CredType credType) + { + const string shareName = "mycontainer"; + const string directoryName = "directoryName"; + const string fileName = "file.txt"; + Uri uri = new Uri($"https://myaccount.blob.core.windows.net/{shareName}/{directoryName}/{fileName}"); + (Mock SharedKey, Mock Token, Mock Sas) mockCreds = GetMockCreds(); + + ShareFilesStorageResourceProvider provider = credType switch + { + CredType.SharedKey => new(mockCreds.SharedKey.Object), + CredType.Token => new(mockCreds.Token.Object), + CredType.Sas => new(mockCreds.Sas.Object), + CredType.None => new(), + _ => throw new ArgumentException("Bad cred type"), + }; + StorageResource resource = await provider.FromFileAsync(uri); + + Assert.IsNotNull(resource); + ShareFileStorageResource fileResource = resource as ShareFileStorageResource; + Assert.IsNotNull(fileResource.ShareFileClient); + Assert.AreEqual(uri, resource.Uri); + Assert.AreEqual(uri, fileResource.ShareFileClient.Uri); + AssertCredPresent(fileResource.ShareFileClient.ClientConfiguration, credType); + } + + [Test] + public async Task CredentialCallback( + [Values(CredType.SharedKey, CredType.Sas)] CredType credType) + { + const string shareName = "mycontainer"; + const string directoryName = "directoryName"; + const string fileName = "file.txt"; + Uri uri = new Uri($"https://myaccount.blob.core.windows.net/{shareName}/{directoryName}/{fileName}"); + (Mock SharedKey, Mock Token, Mock Sas) mockCreds = GetMockCreds(); + + ValueTask GetSharedKeyCredential(Uri uri, CancellationToken cancellationToken) + { + return new ValueTask(mockCreds.SharedKey.Object); + } + ValueTask GetSasCredential(Uri _, CancellationToken cancellationToken) + { + return new ValueTask(mockCreds.Sas.Object); + } + + ShareFilesStorageResourceProvider provider = credType switch + { + CredType.SharedKey => new(GetSharedKeyCredential), + CredType.Sas => new(GetSasCredential), + _ => throw new ArgumentException("Bad cred type"), + }; + StorageResource resource = await provider.FromFileAsync(uri); + + Assert.IsNotNull(resource); + Assert.AreEqual(uri, resource.Uri); + ShareFileStorageResource fileResource = resource as ShareFileStorageResource; + Assert.IsNotNull(fileResource.ShareFileClient); + Assert.AreEqual(uri, resource.Uri); + Assert.AreEqual(uri, fileResource.ShareFileClient.Uri); + AssertCredPresent(fileResource.ShareFileClient.ClientConfiguration, credType); + } + } +} diff --git a/sdk/storage/Azure.Storage.DataMovement/CHANGELOG.md b/sdk/storage/Azure.Storage.DataMovement/CHANGELOG.md index 9682fc316521..5d8e22cfce1e 100644 --- a/sdk/storage/Azure.Storage.DataMovement/CHANGELOG.md +++ b/sdk/storage/Azure.Storage.DataMovement/CHANGELOG.md @@ -1,6 +1,6 @@ # Release History -## 12.0.1 (Unreleased) +## 12.1.0 (Unreleased) ### Bugs Fixed - Fixed an issue that would prevent transfers of large files (>200 GiB) for certain destination resource types. diff --git a/sdk/storage/Azure.Storage.DataMovement/src/Azure.Storage.DataMovement.csproj b/sdk/storage/Azure.Storage.DataMovement/src/Azure.Storage.DataMovement.csproj index 0d5c698e35cd..3839abf0ca1d 100644 --- a/sdk/storage/Azure.Storage.DataMovement/src/Azure.Storage.DataMovement.csproj +++ b/sdk/storage/Azure.Storage.DataMovement/src/Azure.Storage.DataMovement.csproj @@ -5,7 +5,7 @@ Microsoft Azure.Storage.DataMovement client library - 12.0.1 + 12.1.0 12.0.0 DataMovementSDK;$(DefineConstants) diff --git a/sdk/storage/Azure.Storage.Files.Shares/src/AssemblyInfo.cs b/sdk/storage/Azure.Storage.Files.Shares/src/AssemblyInfo.cs index cb62432b8f55..ade54130beb6 100644 --- a/sdk/storage/Azure.Storage.Files.Shares/src/AssemblyInfo.cs +++ b/sdk/storage/Azure.Storage.Files.Shares/src/AssemblyInfo.cs @@ -10,6 +10,12 @@ "012ea67d2479751a0b8c087a4185541b851bd8b16f8d91b840e51b1cb0ba6fe647997e57429265" + "e85ef62d565db50a69ae1647d54d7bd855e4db3d8a91510e5bcbd0edfbbecaa20a7bd9ae74593d" + "aa7b11b4")] +[assembly: InternalsVisibleTo("Azure.Storage.DataMovement.Files.Shares.Tests, PublicKey=" + + "0024000004800000940000000602000000240000525341310004000001000100d15ddcb2968829" + + "5338af4b7686603fe614abd555e09efba8fb88ee09e1f7b1ccaeed2e8f823fa9eef3fdd60217fc" + + "012ea67d2479751a0b8c087a4185541b851bd8b16f8d91b840e51b1cb0ba6fe647997e57429265" + + "e85ef62d565db50a69ae1647d54d7bd855e4db3d8a91510e5bcbd0edfbbecaa20a7bd9ae74593d" + + "aa7b11b4")] [assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")] [assembly: Azure.Core.AzureResourceProviderNamespace("Microsoft.Storage")]