diff --git a/src/ResourceManager/ApiManagement/Commands.ApiManagement/Commands.ApiManagement.Netcore.csproj b/src/ResourceManager/ApiManagement/Commands.ApiManagement/Commands.ApiManagement.Netcore.csproj index 51f908ed0130..860942a80da6 100644 --- a/src/ResourceManager/ApiManagement/Commands.ApiManagement/Commands.ApiManagement.Netcore.csproj +++ b/src/ResourceManager/ApiManagement/Commands.ApiManagement/Commands.ApiManagement.Netcore.csproj @@ -30,7 +30,7 @@ - + diff --git a/src/ResourceManager/AzureBatch/Commands.Batch.Test/Commands.Batch.Test.Netcore.csproj b/src/ResourceManager/AzureBatch/Commands.Batch.Test/Commands.Batch.Test.Netcore.csproj index e89f6efdf80a..5688f3c1735d 100644 --- a/src/ResourceManager/AzureBatch/Commands.Batch.Test/Commands.Batch.Test.Netcore.csproj +++ b/src/ResourceManager/AzureBatch/Commands.Batch.Test/Commands.Batch.Test.Netcore.csproj @@ -27,7 +27,7 @@ - + diff --git a/src/ResourceManager/AzureBatch/Commands.Batch/Commands.Batch.Netcore.csproj b/src/ResourceManager/AzureBatch/Commands.Batch/Commands.Batch.Netcore.csproj index fc600570e9f1..30137964b870 100644 --- a/src/ResourceManager/AzureBatch/Commands.Batch/Commands.Batch.Netcore.csproj +++ b/src/ResourceManager/AzureBatch/Commands.Batch/Commands.Batch.Netcore.csproj @@ -31,7 +31,7 @@ - + diff --git a/src/ResourceManager/Compute/Commands.Compute/Commands.Compute.Netcore.csproj b/src/ResourceManager/Compute/Commands.Compute/Commands.Compute.Netcore.csproj index 7f8fe34ce240..2241ba763fd2 100644 --- a/src/ResourceManager/Compute/Commands.Compute/Commands.Compute.Netcore.csproj +++ b/src/ResourceManager/Compute/Commands.Compute/Commands.Compute.Netcore.csproj @@ -32,7 +32,7 @@ - + diff --git a/src/ResourceManager/Profile/Commands.Profile/packages.config b/src/ResourceManager/Profile/Commands.Profile/packages.config index 8f2f808bef0a..3f5f87c044eb 100644 --- a/src/ResourceManager/Profile/Commands.Profile/packages.config +++ b/src/ResourceManager/Profile/Commands.Profile/packages.config @@ -10,23 +10,23 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + diff --git a/src/ResourceManager/Storage/Commands.Management.Storage.Test/packages.config b/src/ResourceManager/Storage/Commands.Management.Storage.Test/packages.config index a48f1b72904b..0cbdd68652d4 100644 --- a/src/ResourceManager/Storage/Commands.Management.Storage.Test/packages.config +++ b/src/ResourceManager/Storage/Commands.Management.Storage.Test/packages.config @@ -21,7 +21,7 @@ - + diff --git a/src/ResourceManager/Storage/Commands.Management.Storage/ChangeLog.md b/src/ResourceManager/Storage/Commands.Management.Storage/ChangeLog.md index 5c1115eafeac..533d2e2c13de 100644 --- a/src/ResourceManager/Storage/Commands.Management.Storage/ChangeLog.md +++ b/src/ResourceManager/Storage/Commands.Management.Storage/ChangeLog.md @@ -18,6 +18,7 @@ - Additional information about change #1 --> ## Current Release +* Upgrade to Azure Storage Client Library 9.3.0 ## Version 5.0.4 * Fixed issue with default resource groups not being set. diff --git a/src/ResourceManager/Storage/Commands.Management.Storage/Commands.Management.Storage.Netcore.csproj b/src/ResourceManager/Storage/Commands.Management.Storage/Commands.Management.Storage.Netcore.csproj index 075b46f60ef5..2ed918cd7995 100644 --- a/src/ResourceManager/Storage/Commands.Management.Storage/Commands.Management.Storage.Netcore.csproj +++ b/src/ResourceManager/Storage/Commands.Management.Storage/Commands.Management.Storage.Netcore.csproj @@ -34,7 +34,7 @@ - + diff --git a/src/ResourceManager/Storage/Commands.Management.Storage/Commands.Management.Storage.csproj b/src/ResourceManager/Storage/Commands.Management.Storage/Commands.Management.Storage.csproj index c4595eeecae7..b1d1815b5a67 100644 --- a/src/ResourceManager/Storage/Commands.Management.Storage/Commands.Management.Storage.csproj +++ b/src/ResourceManager/Storage/Commands.Management.Storage/Commands.Management.Storage.csproj @@ -64,9 +64,8 @@ ..\..\..\packages\Microsoft.Data.Services.Client.5.8.2\lib\net40\Microsoft.Data.Services.Client.dll - - ..\..\..\packages\WindowsAzure.Storage.9.0.0\lib\net45\Microsoft.WindowsAzure.Storage.dll - True + + ..\..\..\packages\WindowsAzure.Storage.9.3.0\lib\net45\Microsoft.WindowsAzure.Storage.dll ..\..\..\packages\System.Spatial.5.8.2\lib\net40\System.Spatial.dll diff --git a/src/ResourceManager/Storage/Commands.Management.Storage/packages.config b/src/ResourceManager/Storage/Commands.Management.Storage/packages.config index 2f7440be40e7..3bef469f4a12 100644 --- a/src/ResourceManager/Storage/Commands.Management.Storage/packages.config +++ b/src/ResourceManager/Storage/Commands.Management.Storage/packages.config @@ -11,5 +11,5 @@ - + \ No newline at end of file diff --git a/src/ServiceManagement/Services/Commands.Utilities/packages.config b/src/ServiceManagement/Services/Commands.Utilities/packages.config index 5eca387ba820..8271706ce7d0 100644 --- a/src/ServiceManagement/Services/Commands.Utilities/packages.config +++ b/src/ServiceManagement/Services/Commands.Utilities/packages.config @@ -8,14 +8,14 @@ - - - - - - - - + + + + + + + + diff --git a/src/Storage/Commands.Storage.Test/Commands.Storage.Test.Netcore.csproj b/src/Storage/Commands.Storage.Test/Commands.Storage.Test.Netcore.csproj index 0b7799e61760..44adbdf73c3f 100644 --- a/src/Storage/Commands.Storage.Test/Commands.Storage.Test.Netcore.csproj +++ b/src/Storage/Commands.Storage.Test/Commands.Storage.Test.Netcore.csproj @@ -24,8 +24,8 @@ - - + + diff --git a/src/Storage/Commands.Storage.Test/Commands.Storage.Test.csproj b/src/Storage/Commands.Storage.Test/Commands.Storage.Test.csproj index 0068b079df47..7c747b2493cf 100644 --- a/src/Storage/Commands.Storage.Test/Commands.Storage.Test.csproj +++ b/src/Storage/Commands.Storage.Test/Commands.Storage.Test.csproj @@ -56,12 +56,12 @@ false - - ..\..\packages\WindowsAzure.Storage.9.0.0\lib\net45\Microsoft.WindowsAzure.Storage.dll + + ..\..\packages\WindowsAzure.Storage.9.3.0\lib\net45\Microsoft.WindowsAzure.Storage.dll True - - ..\..\packages\Microsoft.Azure.Storage.DataMovement.0.7.1\lib\net45\Microsoft.WindowsAzure.Storage.DataMovement.dll + + ..\..\packages\Microsoft.Azure.Storage.DataMovement.0.8.1\lib\net45\Microsoft.WindowsAzure.Storage.DataMovement.dll ..\..\packages\Newtonsoft.Json.10.0.2\lib\net45\Newtonsoft.Json.dll diff --git a/src/Storage/Commands.Storage.Test/Common/PSServicePropertiesTest.cs b/src/Storage/Commands.Storage.Test/Common/PSServicePropertiesTest.cs index 379e414dd41f..8c8a4af93966 100644 --- a/src/Storage/Commands.Storage.Test/Common/PSServicePropertiesTest.cs +++ b/src/Storage/Commands.Storage.Test/Common/PSServicePropertiesTest.cs @@ -71,6 +71,10 @@ public void ValidateParseServicePropertiesTest() serviceProperties.DeleteRetentionPolicy = new DeleteRetentionPolicy(); serviceProperties.DeleteRetentionPolicy.Enabled = true; serviceProperties.DeleteRetentionPolicy.RetentionDays = 5; + serviceProperties.StaticWebsite = new StaticWebsiteProperties(); + serviceProperties.StaticWebsite.Enabled = true; + serviceProperties.StaticWebsite.IndexDocument = "IndexDocument"; + serviceProperties.StaticWebsite.ErrorDocument404Path = "ErrorDocument404Path"; PSSeriviceProperties pSSeriviceProperties = new PSSeriviceProperties(serviceProperties); CompareServiceProperties(pSSeriviceProperties, serviceProperties); @@ -119,6 +123,12 @@ static private void CompareServiceProperties(PSSeriviceProperties pSSeriviceProp Assert.AreEqual(serviceProperties.DeleteRetentionPolicy.Enabled, pSSeriviceProperties.DeleteRetentionPolicy.Enabled); Assert.AreEqual(serviceProperties.DeleteRetentionPolicy.RetentionDays, pSSeriviceProperties.DeleteRetentionPolicy.RetentionDays); } + if ((pSSeriviceProperties != null && pSSeriviceProperties.StaticWebsite != null) || (serviceProperties != null && serviceProperties.StaticWebsite != null)) + { + Assert.AreEqual(serviceProperties.StaticWebsite.Enabled, pSSeriviceProperties.StaticWebsite.Enabled); + Assert.AreEqual(serviceProperties.StaticWebsite.IndexDocument, pSSeriviceProperties.StaticWebsite.IndexDocument); + Assert.AreEqual(serviceProperties.StaticWebsite.ErrorDocument404Path, pSSeriviceProperties.StaticWebsite.ErrorDocument404Path); + } } /// diff --git a/src/Storage/Commands.Storage.Test/packages.config b/src/Storage/Commands.Storage.Test/packages.config index 2650e1d5158f..851277daff77 100644 --- a/src/Storage/Commands.Storage.Test/packages.config +++ b/src/Storage/Commands.Storage.Test/packages.config @@ -5,7 +5,7 @@ - + @@ -24,7 +24,7 @@ - + diff --git a/src/Storage/Commands.Storage/Azure.Storage.psd1 b/src/Storage/Commands.Storage/Azure.Storage.psd1 index a2f6e9b125b9..b8538dd20c68 100644 --- a/src/Storage/Commands.Storage/Azure.Storage.psd1 +++ b/src/Storage/Commands.Storage/Azure.Storage.psd1 @@ -126,7 +126,9 @@ CmdletsToExport = 'Get-AzureStorageTable', 'New-AzureStorageTableSASToken', 'Stop-AzureStorageBlobCopy', 'Update-AzureStorageServiceProperty', 'Get-AzureStorageServiceProperty', 'Enable-AzureStorageDeleteRetentionPolicy', - 'Disable-AzureStorageDeleteRetentionPolicy' + 'Disable-AzureStorageDeleteRetentionPolicy', + 'Enable-AzureStorageStaticWebsite', + 'Disable-AzureStorageStaticWebsite' # Variables to export from this module # VariablesToExport = @() diff --git a/src/Storage/Commands.Storage/Blob/StorageDataMovementCmdletBase.cs b/src/Storage/Commands.Storage/Blob/StorageDataMovementCmdletBase.cs index ee9ea8a1942e..0261c4538bdd 100644 --- a/src/Storage/Commands.Storage/Blob/StorageDataMovementCmdletBase.cs +++ b/src/Storage/Commands.Storage/Blob/StorageDataMovementCmdletBase.cs @@ -21,6 +21,7 @@ namespace Microsoft.WindowsAzure.Commands.Storage.Blob using System; using System.Globalization; using System.Management.Automation; + using System.Threading.Tasks; public class StorageDataMovementCmdletBase : StorageCloudBlobCmdletBase, IDisposable { @@ -53,6 +54,17 @@ protected bool ConfirmOverwrite(object source, object destination) return overwrite || OutputStream.ConfirmAsync(overwriteMessage).Result; } + /// + /// Confirm the overwrite operation + /// + /// Confirmation message + /// True if the opeation is confirmed, otherwise return false + protected async Task ConfirmOverwriteAsync(object source, object destination) + { + string overwriteMessage = string.Format(CultureInfo.CurrentCulture, Resources.OverwriteConfirmation, Util.ConvertToString(destination)); + return overwrite || await OutputStream.ConfirmAsync(overwriteMessage); + } + /// /// On Task run successfully /// @@ -78,11 +90,11 @@ protected SingleTransferContext GetTransferContext(DataMovementUserData userData transferContext.ClientRequestId = CmdletOperationContext.ClientRequestId; if (overwrite) { - transferContext.ShouldOverwriteCallback = TransferContext.ForceOverwrite; + transferContext.ShouldOverwriteCallbackAsync = TransferContext.ForceOverwrite; } else { - transferContext.ShouldOverwriteCallback = ConfirmOverwrite; + transferContext.ShouldOverwriteCallbackAsync = ConfirmOverwriteAsync; } transferContext.ProgressHandler = new TransferProgressHandler((transferProgress) => diff --git a/src/Storage/Commands.Storage/ChangeLog.md b/src/Storage/Commands.Storage/ChangeLog.md index a471faf8bb58..05ed7c45be01 100644 --- a/src/Storage/Commands.Storage/ChangeLog.md +++ b/src/Storage/Commands.Storage/ChangeLog.md @@ -18,6 +18,12 @@ - Additional information about change #1 --> ## Current Release +* Upgrade to Azure Storage Client Library 9.3.0 and Azure Storage DataMovement Library 0.8.1 +* Support create Storage Context with OAuth. + - New-AzureStorageContext +* Support Static Website configuration + - Enable-AzureStorageStaticWebsite + - Disable-AzureStorageStaticWebsite ## Version 4.5.0 * Remove the 5TB limitation for Azure File Share quota diff --git a/src/Storage/Commands.Storage/Commands.Storage.Netcore.csproj b/src/Storage/Commands.Storage/Commands.Storage.Netcore.csproj index 054f68ca0513..61a419b02da9 100644 --- a/src/Storage/Commands.Storage/Commands.Storage.Netcore.csproj +++ b/src/Storage/Commands.Storage/Commands.Storage.Netcore.csproj @@ -29,8 +29,8 @@ - - + + @@ -72,4 +72,4 @@ - \ No newline at end of file + diff --git a/src/Storage/Commands.Storage/Commands.Storage.csproj b/src/Storage/Commands.Storage/Commands.Storage.csproj index edae59b0019c..8c7129dcf6c4 100644 --- a/src/Storage/Commands.Storage/Commands.Storage.csproj +++ b/src/Storage/Commands.Storage/Commands.Storage.csproj @@ -47,18 +47,19 @@ false - - ..\..\packages\WindowsAzure.Storage.9.0.0\lib\net45\Microsoft.WindowsAzure.Storage.dll + + ..\..\packages\WindowsAzure.Storage.9.3.0\lib\net45\Microsoft.WindowsAzure.Storage.dll True - - ..\..\packages\Microsoft.Azure.Storage.DataMovement.0.7.1\lib\net45\Microsoft.WindowsAzure.Storage.DataMovement.dll + + ..\..\packages\Microsoft.Azure.Storage.DataMovement.0.8.1\lib\net45\Microsoft.WindowsAzure.Storage.DataMovement.dll + True ..\..\packages\Newtonsoft.Json.10.0.2\lib\net45\Newtonsoft.Json.dll - ..\..\packages\Microsoft.Azure.PowerShell.ResourceManager.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.ResourceManager.Common.dll + ..\..\packages\Microsoft.Azure.PowerShell.ResourceManager.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.ResourceManager.Common.dll True @@ -105,6 +106,8 @@ + + diff --git a/src/Storage/Commands.Storage/Common/Cmdlet/DisableAzureStorageStaticWebsite.cs b/src/Storage/Commands.Storage/Common/Cmdlet/DisableAzureStorageStaticWebsite.cs new file mode 100644 index 000000000000..a2d3d9bdc297 --- /dev/null +++ b/src/Storage/Commands.Storage/Common/Cmdlet/DisableAzureStorageStaticWebsite.cs @@ -0,0 +1,83 @@ +// ---------------------------------------------------------------------------------- +// +// Copyright Microsoft Corporation +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// http://www.apache.org/licenses/LICENSE-2.0 +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// ---------------------------------------------------------------------------------- + +namespace Microsoft.WindowsAzure.Commands.Storage.Common.Cmdlet +{ + using Microsoft.WindowsAzure.Commands.Storage.Model.ResourceModel; + using Microsoft.WindowsAzure.Storage.Shared.Protocol; + using System; + using System.Management.Automation; + using System.Security.Permissions; + + /// + /// Disable azure storage service StaticWebsite, currently only available on Blob service + /// + [Cmdlet(VerbsLifecycle.Disable, Azure.Commands.ResourceManager.Common.AzureRMConstants.AzurePrefix + "StorageStaticWebsite", SupportsShouldProcess = true), + OutputType(typeof(PSStaticWebsiteProperties))] + public class DisableAzureStorageServiceStaticWebsiteCommand : StorageCloudBlobCmdletBase + { + [Parameter(Mandatory = false)] + public SwitchParameter PassThru { get; set; } + + // Overwrite the useless parameter + public override int? ServerTimeoutPerRequest { get; set; } + public override int? ClientTimeoutPerRequest { get; set; } + public override int? ConcurrentTaskCount { get; set; } + + public DisableAzureStorageServiceStaticWebsiteCommand() + { + EnableMultiThread = false; + } + + /// + /// Update the specified StaticWebsite Properties according to the input + /// + /// StaticWebsite Properties + internal void DisableStaticWebsiteProperties(ServiceProperties serviceProperties) + { + if (serviceProperties.StaticWebsite == null) + { + serviceProperties.StaticWebsite = new StaticWebsiteProperties(); + } + + serviceProperties.StaticWebsite.Enabled = false; + serviceProperties.StaticWebsite.IndexDocument = null; + serviceProperties.StaticWebsite.ErrorDocument404Path = null; + } + + /// + /// Execute command + /// + [PermissionSet(SecurityAction.Demand, Name = "FullTrust")] + public override void ExecuteCmdlet() + { + StorageServiceType serviceType = StorageServiceType.Blob; + + if (ShouldProcess(serviceType.ToString(), "Disable Static Website")) + { + ServiceProperties serviceProperties = Channel.GetStorageServiceProperties(serviceType, GetRequestOptions(serviceType), OperationContext); + + DisableStaticWebsiteProperties(serviceProperties); + + Channel.SetStorageServiceProperties(serviceType, serviceProperties, + GetRequestOptions(serviceType), OperationContext); + + if (PassThru) + { + WriteObject(PSStaticWebsiteProperties.ParsePSStaticWebsiteProperties(serviceProperties.StaticWebsite)); + } + } + } + } +} diff --git a/src/Storage/Commands.Storage/Common/Cmdlet/EnableAzureStorageStaticWebsite.cs b/src/Storage/Commands.Storage/Common/Cmdlet/EnableAzureStorageStaticWebsite.cs new file mode 100644 index 000000000000..cd64fbbb76a0 --- /dev/null +++ b/src/Storage/Commands.Storage/Common/Cmdlet/EnableAzureStorageStaticWebsite.cs @@ -0,0 +1,88 @@ +// ---------------------------------------------------------------------------------- +// +// Copyright Microsoft Corporation +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// http://www.apache.org/licenses/LICENSE-2.0 +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// ---------------------------------------------------------------------------------- + +namespace Microsoft.WindowsAzure.Commands.Storage.Common.Cmdlet +{ + using Microsoft.WindowsAzure.Commands.Storage.Model.ResourceModel; + using Microsoft.WindowsAzure.Storage.Shared.Protocol; + using System; + using System.Management.Automation; + using System.Security.Permissions; + + /// + /// Enable azure storage service StaticWebsite, currently only enabled on Blob service + /// + [Cmdlet(VerbsLifecycle.Enable, Azure.Commands.ResourceManager.Common.AzureRMConstants.AzurePrefix + "StorageStaticWebsite", SupportsShouldProcess = true), + OutputType(typeof(PSStaticWebsiteProperties))] + public class EnableAzureStorageServiceStaticWebsiteCommand : StorageCloudBlobCmdletBase + { + [Parameter(Mandatory = true, Position = 0, HelpMessage = "The name of the index document in each directory.")] + public string IndexDocument { get; set; } + + [Parameter(Mandatory = true, Position = 1, HelpMessage = "the path to the error document that should be shown when a 404 is issued (meaning, when a browser requests a page that does not exist.)")] + public string ErrorDocument404Path { get; set; } + + [Parameter(Mandatory = false)] + public SwitchParameter PassThru { get; set; } + + // Overwrite the useless parameter + public override int? ServerTimeoutPerRequest { get; set; } + public override int? ClientTimeoutPerRequest { get; set; } + public override int? ConcurrentTaskCount { get; set; } + + public EnableAzureStorageServiceStaticWebsiteCommand() + { + EnableMultiThread = false; + } + + /// + /// Update the specified StaticWebsite Properties according to the input + /// + /// StaticWebsite Properties + internal void EnableStaticWebsiteProperties(ServiceProperties serviceProperties) + { + if (serviceProperties.StaticWebsite == null) + { + serviceProperties.StaticWebsite = new StaticWebsiteProperties(); + } + serviceProperties.StaticWebsite.Enabled = true; + serviceProperties.StaticWebsite.IndexDocument = this.IndexDocument; + serviceProperties.StaticWebsite.ErrorDocument404Path = this.ErrorDocument404Path; + } + + /// + /// Execute command + /// + [PermissionSet(SecurityAction.Demand, Name = "FullTrust")] + public override void ExecuteCmdlet() + { + StorageServiceType serviceType = StorageServiceType.Blob; + + if (ShouldProcess(serviceType.ToString(), "Enable Static Website")) + { + ServiceProperties serviceProperties = Channel.GetStorageServiceProperties(serviceType, GetRequestOptions(serviceType), OperationContext); + + EnableStaticWebsiteProperties(serviceProperties); + + Channel.SetStorageServiceProperties(serviceType, serviceProperties, + GetRequestOptions(serviceType), OperationContext); + + if (PassThru) + { + WriteObject(PSStaticWebsiteProperties.ParsePSStaticWebsiteProperties(serviceProperties.StaticWebsite)); + } + } + } + } +} diff --git a/src/Storage/Commands.Storage/Common/Cmdlet/NewAzureStorageContext.cs b/src/Storage/Commands.Storage/Common/Cmdlet/NewAzureStorageContext.cs index e18c00d29464..4e223daa3296 100644 --- a/src/Storage/Commands.Storage/Common/Cmdlet/NewAzureStorageContext.cs +++ b/src/Storage/Commands.Storage/Common/Cmdlet/NewAzureStorageContext.cs @@ -12,9 +12,11 @@ // limitations under the License. // ---------------------------------------------------------------------------------- +using Microsoft.Azure.Commands.Common.Authentication; using Microsoft.Azure.Commands.Common.Authentication.Abstractions; using Microsoft.Azure.ServiceManagemenet.Common; using Microsoft.WindowsAzure.Commands.Common; +using Microsoft.WindowsAzure.Commands.Common.CustomAttributes; using Microsoft.WindowsAzure.Commands.Common.Storage; using Microsoft.WindowsAzure.Commands.Utilities.Common; using Microsoft.WindowsAzure.Storage; @@ -24,15 +26,27 @@ using System.Linq; using System.Management.Automation; using System.Security.Permissions; +using System.Threading; +using System.Threading.Tasks; namespace Microsoft.WindowsAzure.Commands.Storage.Common.Cmdlet { /// /// New storage context /// - [Cmdlet("New", Azure.Commands.ResourceManager.Common.AzureRMConstants.AzurePrefix + "StorageContext", DefaultParameterSetName = AccountNameKeyParameterSet),OutputType(typeof(AzureStorageContext))] + [Cmdlet("New", Azure.Commands.ResourceManager.Common.AzureRMConstants.AzurePrefix + "StorageContext", DefaultParameterSetName = AccountNameKeyParameterSet), OutputType(typeof(AzureStorageContext))] public class NewAzureStorageContext : AzureDataCmdlet { + /// + /// Default resourceId for storage OAuth tokens + /// + public const string StorageOAuthEndpointResourceValue = "https://storage.azure.com"; + + /// + /// The extension key to use for the storage token audience value + /// + public const string StorageOAuthEndpointResourceKey = "StorageOAuthEndpointResourceId"; + /// /// Account name and key parameter set name /// @@ -68,6 +82,16 @@ public class NewAzureStorageContext : AzureDataCmdlet /// private const string AnonymousParameterSet = "AnonymousAccount"; + /// + /// OAuth storage account parameter set name + /// + private const string OAuthParameterSet = "OAuthAccount"; + + /// + /// OAuth storage account parameter set name + /// + private const string OAuthEnvironmentParameterSet = "OAuthAccountEnvironment"; + /// /// Anonymous storage account with azure environment parameter set name /// @@ -86,6 +110,10 @@ public class NewAzureStorageContext : AzureDataCmdlet Mandatory = true, ParameterSetName = SasTokenParameterSet)] [Parameter(Position = 0, HelpMessage = StorageAccountNameHelpMessage, Mandatory = true, ParameterSetName = SasTokenEnvironmentParameterSet)] + [Parameter(Position = 0, HelpMessage = StorageAccountNameHelpMessage, + Mandatory = true, ParameterSetName = OAuthParameterSet)] + [Parameter(Position = 0, HelpMessage = StorageAccountNameHelpMessage, + Mandatory = true, ParameterSetName = OAuthEnvironmentParameterSet)] [ValidateNotNullOrEmpty] public string StorageAccountName { get; set; } @@ -135,6 +163,16 @@ public SwitchParameter Anonymous private bool isAnonymous; + [Parameter(HelpMessage = "Use OAuth storage account", Mandatory = false, ParameterSetName = OAuthParameterSet)] + [Parameter(HelpMessage = "Use OAuth storage account", Mandatory = false, ParameterSetName = OAuthEnvironmentParameterSet)] + public SwitchParameter UseConnectedAccount + { + get { return isOAuth; } + set { isOAuth = value; } + } + + private bool isOAuth = true; + private const string ProtocolHelpMessage = "Protocol specification (HTTP or HTTPS), default is HTTPS"; [Parameter(HelpMessage = ProtocolHelpMessage, ParameterSetName = AccountNameKeyParameterSet)] @@ -146,6 +184,10 @@ public SwitchParameter Anonymous ParameterSetName = AnonymousEnvironmentParameterSet)] [Parameter(HelpMessage = ProtocolHelpMessage, ParameterSetName = SasTokenParameterSet)] + [Parameter(HelpMessage = ProtocolHelpMessage, + ParameterSetName = OAuthParameterSet)] + [Parameter(HelpMessage = ProtocolHelpMessage, + ParameterSetName = OAuthEnvironmentParameterSet)] [ValidateSet(StorageNouns.HTTP, StorageNouns.HTTPS, IgnoreCase = true)] public string Protocol { @@ -159,6 +201,7 @@ public string Protocol [Parameter(HelpMessage = EndPointHelpMessage, ParameterSetName = AccountNameKeyParameterSet)] [Parameter(HelpMessage = EndPointHelpMessage, ParameterSetName = AnonymousParameterSet)] [Parameter(HelpMessage = EndPointHelpMessage, ParameterSetName = SasTokenParameterSet)] + [Parameter(HelpMessage = EndPointHelpMessage, ParameterSetName = OAuthParameterSet)] public string Endpoint { get { return storageEndpoint; } @@ -174,6 +217,7 @@ public string Endpoint [Parameter(HelpMessage = AzureEnvironmentHelpMessage, ParameterSetName = AnonymousEnvironmentParameterSet, ValueFromPipelineByPropertyName = true, Mandatory = true)] [Parameter(HelpMessage = AzureEnvironmentHelpMessage, ParameterSetName = SasTokenEnvironmentParameterSet, Mandatory = true)] + [Parameter(HelpMessage = AzureEnvironmentHelpMessage, ParameterSetName = OAuthEnvironmentParameterSet, Mandatory = true)] public string Environment { get { return environmentName; } @@ -280,6 +324,94 @@ internal CloudStorageAccount GetAnonymousStorageAccountFromAzureEnvironment(stri return GetStorageAccountWithAzureEnvironment(credential, storageAccountName, useHttps, azureEnvironmentName); } + /// + /// Get OAuth storage account + /// + /// Storage account name, it's used for build end point + /// + /// + /// A storage account + internal CloudStorageAccount GetStorageAccountByOAuth(string storageAccountName, bool useHttps, string storageEndpoint = "") + { + IAccessToken accessToken = CreateOAuthToken(); + TokenCredential tokenCredential = new TokenCredential(GetTokenStrFromAccessToken(accessToken), GetTokenRenewer(accessToken), null, new TimeSpan(0, 1, 0)); + StorageCredentials credential = new StorageCredentials(tokenCredential); + return GetStorageAccountWithEndPoint(credential, storageAccountName, useHttps, storageEndpoint); + } + + /// + /// Get OAuth storage account + /// + /// Storage account name, it's used for build end point + /// + /// + /// A storage account + internal CloudStorageAccount GetStorageAccountByOAuthFromAzureEnvironment(string storageAccountName, bool useHttps, string azureEnvironmentName = "") + { + IAccessToken accessToken = CreateOAuthToken(); + TokenCredential tokenCredential = new TokenCredential(GetTokenStrFromAccessToken(accessToken), GetTokenRenewer(accessToken), null, new TimeSpan(0, 1, 0)); + StorageCredentials credential = new StorageCredentials(tokenCredential); + return GetStorageAccountWithAzureEnvironment(credential, storageAccountName, useHttps, azureEnvironmentName); + } + + private RenewTokenFuncAsync GetTokenRenewer(IAccessToken accessToken) + { +#pragma warning disable CS1998 // Async method lacks 'await' operators and will run synchronously + RenewTokenFuncAsync renewer = async (Object state, CancellationToken cancellationToken) => +#pragma warning restore CS1998 // Async method lacks 'await' operators and will run synchronously + { + var tokenStr = GetTokenStrFromAccessToken(accessToken); + return new NewTokenAndFrequency(tokenStr, new TimeSpan(0, 1, 0)); + }; + return renewer; + } + + private IAzureEnvironment EnsureStorageOAuthAudienceSet(IAzureEnvironment environment) + { + if (environment != null) + { + if (!environment.IsPropertySet(StorageOAuthEndpointResourceKey)) + { + environment.SetProperty(StorageOAuthEndpointResourceKey, StorageOAuthEndpointResourceValue); + } + } + + return environment; + } + + /// + /// Create a OAuth Token + /// + /// the token + private IAccessToken CreateOAuthToken() + { + IAccessToken accessToken = AzureSession.Instance.AuthenticationFactory.Authenticate( + DefaultContext.Account, + EnsureStorageOAuthAudienceSet(DefaultContext.Environment), + DefaultContext.Tenant.Id, + null, + ShowDialog.Never, + null, + StorageOAuthEndpointResourceKey); + return accessToken; + } + + /// + /// Get the token string from the accesstoken + /// + /// the token + /// token string + private string GetTokenStrFromAccessToken(IAccessToken accessToken) + { + var tokenStr = string.Empty; + accessToken.AuthorizeRequest((tokenType, tokenValue) => + { + tokenStr = tokenValue; + }); + WriteDebug(DateTime.Now.ToString() + ": token:" + tokenStr); + return tokenStr; + } + /// /// Get storage account and use specific end point /// @@ -433,6 +565,12 @@ public override void ExecuteCmdlet() case AnonymousEnvironmentParameterSet: account = GetAnonymousStorageAccountFromAzureEnvironment(StorageAccountName, useHttps, environmentName); break; + case OAuthParameterSet: + account = GetStorageAccountByOAuth(StorageAccountName, useHttps, storageEndpoint); + break; + case OAuthEnvironmentParameterSet: + account = GetStorageAccountByOAuthFromAzureEnvironment(StorageAccountName, useHttps, environmentName); + break; default: throw new ArgumentException(Resources.DefaultStorageCredentialsNotFound); } diff --git a/src/Storage/Commands.Storage/Common/StorageNouns.cs b/src/Storage/Commands.Storage/Common/StorageNouns.cs index e010138f9e57..766f30ca206d 100644 --- a/src/Storage/Commands.Storage/Common/StorageNouns.cs +++ b/src/Storage/Commands.Storage/Common/StorageNouns.cs @@ -109,6 +109,7 @@ public static class StorageNouns /// public const string StorageServiceProperty = "AzureStorageServiceProperty"; + /// /// Azure storage Service Delete Retention Policy /// public const string ServiceDeleteRetentionPolicy = "AzureStorageDeleteRetentionPolicy"; @@ -168,7 +169,6 @@ public static class StorageNouns /// public const string ContainerStoredAccessPolicy = "AzureStorageContainerStoredAccessPolicy"; - /// /// Azure storage container stored access policy /// diff --git a/src/Storage/Commands.Storage/File/StorageFileDataManagementCmdletBase.cs b/src/Storage/Commands.Storage/File/StorageFileDataManagementCmdletBase.cs index 5b890473fc0f..3f058eb1a752 100644 --- a/src/Storage/Commands.Storage/File/StorageFileDataManagementCmdletBase.cs +++ b/src/Storage/Commands.Storage/File/StorageFileDataManagementCmdletBase.cs @@ -20,6 +20,7 @@ namespace Microsoft.WindowsAzure.Commands.Storage.File using Microsoft.WindowsAzure.Storage.DataMovement; using System.Globalization; using System.Management.Automation; + using System.Threading.Tasks; public abstract class StorageFileDataManagementCmdletBase : AzureStorageFileCmdletBase { @@ -58,6 +59,17 @@ protected bool ConfirmOverwrite(object source, object destination) return this.Force || this.OutputStream.ConfirmAsync(string.Format(CultureInfo.CurrentCulture, Resources.OverwriteConfirmation, Util.ConvertToString(destination))).Result; } + /// + /// Confirm the overwrite operation + /// + /// Indicating the source. + /// Indicating the destination. + /// Returns a value indicating whether to overwrite. + protected async Task ConfirmOverwriteAsync(object source, object destination) + { + return this.Force || await this.OutputStream.ConfirmAsync(string.Format(CultureInfo.CurrentCulture, Resources.OverwriteConfirmation, Util.ConvertToString(destination))); + } + protected override void BeginProcessing() { base.BeginProcessing(); @@ -85,11 +97,11 @@ protected SingleTransferContext GetTransferContext(ProgressRecord record, long t transferContext.ClientRequestId = CmdletOperationContext.ClientRequestId; if (this.Force) { - transferContext.ShouldOverwriteCallback = TransferContext.ForceOverwrite; + transferContext.ShouldOverwriteCallbackAsync = TransferContext.ForceOverwrite; } else { - transferContext.ShouldOverwriteCallback = ConfirmOverwrite; + transferContext.ShouldOverwriteCallbackAsync = ConfirmOverwriteAsync; } transferContext.ProgressHandler = new TransferProgressHandler((transferProgress) => diff --git a/src/Storage/Commands.Storage/Microsoft.WindowsAzure.Commands.Storage.format.ps1xml b/src/Storage/Commands.Storage/Microsoft.WindowsAzure.Commands.Storage.format.ps1xml index 45a110d2a076..7b045928c0fd 100644 --- a/src/Storage/Commands.Storage/Microsoft.WindowsAzure.Commands.Storage.format.ps1xml +++ b/src/Storage/Commands.Storage/Microsoft.WindowsAzure.Commands.Storage.format.ps1xml @@ -412,6 +412,22 @@ $_.DeleteRetentionPolicy.RetentionDays + + + $_.StaticWebsite.Enabled + + + + $_.StaticWebsite.IndexDocument + + + + $_.StaticWebsite.ErrorDocument404Path + + + $_.Cors + + DefaultServiceVersion diff --git a/src/Storage/Commands.Storage/Microsoft.WindowsAzure.Commands.Storage.generated.format.ps1xml b/src/Storage/Commands.Storage/Microsoft.WindowsAzure.Commands.Storage.generated.format.ps1xml index 9899c6afd361..a36a62b0fac0 100644 --- a/src/Storage/Commands.Storage/Microsoft.WindowsAzure.Commands.Storage.generated.format.ps1xml +++ b/src/Storage/Commands.Storage/Microsoft.WindowsAzure.Commands.Storage.generated.format.ps1xml @@ -142,6 +142,18 @@ $_.DeleteRetentionPolicy.RetentionDays + + + $_.StaticWebsite.Enabled + + + + $_.StaticWebsite.IndexDocument + + + + $_.StaticWebsite.ErrorDocument404Path + $_.Cors diff --git a/src/Storage/Commands.Storage/Model/ResourceModel/PSSeriviceProperties.cs b/src/Storage/Commands.Storage/Model/ResourceModel/PSSeriviceProperties.cs index d9198735d288..90f6a2d7f4b1 100644 --- a/src/Storage/Commands.Storage/Model/ResourceModel/PSSeriviceProperties.cs +++ b/src/Storage/Commands.Storage/Model/ResourceModel/PSSeriviceProperties.cs @@ -35,6 +35,7 @@ public PSSeriviceProperties(ServiceProperties properties) this.DefaultServiceVersion = properties.DefaultServiceVersion; this.Cors = PSCorsRule.ParseCorsRules(properties.Cors); this.DeleteRetentionPolicy = PSDeleteRetentionPolicy.ParsePSDeleteRetentionPolicy(properties.DeleteRetentionPolicy); + this.StaticWebsite = PSStaticWebsiteProperties.ParsePSStaticWebsiteProperties(properties.StaticWebsite); } } @@ -75,6 +76,13 @@ public PSSeriviceProperties(ServiceProperties properties) [Ps1Xml(Label = "DeleteRetentionPolicy.Enabled", Target = ViewControl.List, ScriptBlock = "$_.DeleteRetentionPolicy.Enabled", Position = 9)] [Ps1Xml(Label = "DeleteRetentionPolicy.RetentionDays", Target = ViewControl.List, ScriptBlock = "$_.DeleteRetentionPolicy.RetentionDays", Position = 10)] public PSDeleteRetentionPolicy DeleteRetentionPolicy { get; set; } + // + // Summary: + // Gets or sets the service properties pertaining to StaticWebsites + [Ps1Xml(Label = "StaticWebsite.Enabled", Target = ViewControl.List, ScriptBlock = "$_.StaticWebsite.Enabled", Position = 11)] + [Ps1Xml(Label = "StaticWebsite.IndexDocument", Target = ViewControl.List, ScriptBlock = "$_.StaticWebsite.IndexDocument", Position = 12)] + [Ps1Xml(Label = "StaticWebsite.ErrorDocument404Path", Target = ViewControl.List, ScriptBlock = "$_.StaticWebsite.ErrorDocument404Path", Position = 13)] + public PSStaticWebsiteProperties StaticWebsite { get; set; } } // Wrapper of DeleteRetentionPolicy @@ -104,4 +112,40 @@ public static PSDeleteRetentionPolicy ParsePSDeleteRetentionPolicy(DeleteRetenti // Gets or Sets the number of days on the DeleteRetentionPolicy. public int? RetentionDays { get; set; } } + + // Wrapper of StaticWebsiteProperties + public class PSStaticWebsiteProperties + { + // + // Summary: + // Parse DeleteRetentionPolicy object in SDK to wrapped PSDeleteRetentionPolicy object + public static PSStaticWebsiteProperties ParsePSStaticWebsiteProperties(StaticWebsiteProperties staticWebsiteProperties) + { + if (staticWebsiteProperties == null) + { + return null; + } + PSStaticWebsiteProperties psProperties = new PSStaticWebsiteProperties(); + psProperties.Enabled = staticWebsiteProperties.Enabled; + psProperties.IndexDocument = staticWebsiteProperties.IndexDocument; + psProperties.ErrorDocument404Path = staticWebsiteProperties.ErrorDocument404Path; + return psProperties; + } + + // + // Summary: + // True if static websites should be enabled on the blob service for the corresponding + // Storage Account. + public bool Enabled { get; set; } + // + // Summary: + // Gets or sets a string representing the name of the index document in each directory. + public string IndexDocument { get; set; } + // + // Summary: + // Gets or sets a string representing the path to the error document that should + // be shown when a 404 is issued (meaning, when a browser requests a page that does + // not exist.) + public string ErrorDocument404Path { get; set; } + } } diff --git a/src/Storage/Commands.Storage/help/Azure.Storage.md b/src/Storage/Commands.Storage/help/Azure.Storage.md index e22eaea1d436..2fb2ef84c506 100644 --- a/src/Storage/Commands.Storage/help/Azure.Storage.md +++ b/src/Storage/Commands.Storage/help/Azure.Storage.md @@ -14,9 +14,15 @@ This topic displays help topics for the Azure Storage Cmdlets. ### [Disable-AzureStorageDeleteRetentionPolicy](Disable-AzureStorageDeleteRetentionPolicy.md) Disable delete retention policy for the Azure Storage Blob service. +### [Disable-AzureStorageStaticWebsite](Disable-AzureStorageStaticWebsite.md) +Disable static website for the Azure Storage account. + ### [Enable-AzureStorageDeleteRetentionPolicy](Enable-AzureStorageDeleteRetentionPolicy.md) Enable delete retention policy for the Azure Storage Blob service. +### [Enable-AzureStorageStaticWebsite](Enable-AzureStorageStaticWebsite.md) +Enable static website for the Azure Storage account. + ### [Get-AzureStorageBlob](Get-AzureStorageBlob.md) Lists blobs in a container. diff --git a/src/Storage/Commands.Storage/help/Disable-AzureStorageStaticWebsite.md b/src/Storage/Commands.Storage/help/Disable-AzureStorageStaticWebsite.md new file mode 100644 index 000000000000..9c13fbfaa552 --- /dev/null +++ b/src/Storage/Commands.Storage/help/Disable-AzureStorageStaticWebsite.md @@ -0,0 +1,109 @@ +--- +external help file: Microsoft.WindowsAzure.Commands.Storage.dll-Help.xml +Module Name: Azure.Storage +online version: https://docs.microsoft.com/en-us/powershell/module/azure.storage/disable-azurestoragstaticwebsite +schema: 2.0.0 +--- + +# Disable-AzureStorageStaticWebsite + +## SYNOPSIS +Disable static website for the Azure Storage account. + +## SYNTAX + +``` +Disable-AzureStorageStaticWebsite [-PassThru] [-Context ] [-WhatIf] [-Confirm] + [] +``` + +## DESCRIPTION +The **Disable-AzureStorageStaticWebsite** cmdlet disables static website for the Azure Storage account. + +## EXAMPLES + +### Example 1: Disable static website for a Azure Storage account +``` +C:\PS>Disable-AzureStorageStaticWebsite +``` + +This command disables static website for a Azure Storage account. + +## PARAMETERS + +### -Context +Azure Storage Context Object + +```yaml +Type: IStorageContext +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName, ByValue) +Accept wildcard characters: False +``` + +### -PassThru +{{Fill PassThru Description}} + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. +The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### Microsoft.Azure.Commands.Common.Authentication.Abstractions.IStorageContext + +## OUTPUTS + +### Microsoft.WindowsAzure.Commands.Storage.Model.ResourceModel.PSStaticWebsiteProperties + +## NOTES + +## RELATED LINKS + diff --git a/src/Storage/Commands.Storage/help/Enable-AzureStorageStaticWebsite.md b/src/Storage/Commands.Storage/help/Enable-AzureStorageStaticWebsite.md new file mode 100644 index 000000000000..e0d8c67308c9 --- /dev/null +++ b/src/Storage/Commands.Storage/help/Enable-AzureStorageStaticWebsite.md @@ -0,0 +1,139 @@ +--- +external help file: Microsoft.WindowsAzure.Commands.Storage.dll-Help.xml +Module Name: Azure.Storage +online version: https://docs.microsoft.com/en-us/powershell/module/azure.storage/enable-azurestoragstaticwebsite +schema: 2.0.0 +--- + +# Enable-AzureStorageStaticWebsite + +## SYNOPSIS +Enable static website for the Azure Storage account. + +## SYNTAX + +``` +Enable-AzureStorageStaticWebsite [-IndexDocument] [-ErrorDocument404Path] [-PassThru] + [-Context ] [-WhatIf] [-Confirm] [] +``` + +## DESCRIPTION +The **Enable-AzureStorageStaticWebsite** cmdlet enables static website for the Azure Storage account. + +## EXAMPLES + +### Example 1: Enable static website for the Azure Storage account +``` +C:\PS>Enable-AzureStorageStaticWebsite -IndexDocument $indexdoc -ErrorDocument404Path $errordoc +``` + +This command enables static website for the Azure Storage account. + +## PARAMETERS + +### -Context +Azure Storage Context Object + +```yaml +Type: IStorageContext +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: True (ByPropertyName, ByValue) +Accept wildcard characters: False +``` + +### -ErrorDocument404Path +The path to the error document that should be shown when a 404 is issued (meaning, when a browser requests a page that does not exist.) + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: 1 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -IndexDocument +The name of the index document in each directory. + +```yaml +Type: String +Parameter Sets: (All) +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -PassThru +{{Fill PassThru Description}} + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. +The cmdlet is not run. + +```yaml +Type: SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### Microsoft.Azure.Commands.Common.Authentication.Abstractions.IStorageContext + +## OUTPUTS + +### Microsoft.WindowsAzure.Commands.Storage.Model.ResourceModel.PSStaticWebsiteProperties + +## NOTES + +## RELATED LINKS + diff --git a/src/Storage/Commands.Storage/help/New-AzureStorageContext.md b/src/Storage/Commands.Storage/help/New-AzureStorageContext.md index 681755a9fb2f..56f24b755228 100644 --- a/src/Storage/Commands.Storage/help/New-AzureStorageContext.md +++ b/src/Storage/Commands.Storage/help/New-AzureStorageContext.md @@ -13,7 +13,13 @@ Creates an Azure Storage context. ## SYNTAX -### AccountNameAndKey (Default) +### OAuthAccount (Default) +``` +New-AzureStorageContext [-StorageAccountName] [-UseConnectedAccount] [-Protocol ] + [-Endpoint ] [] +``` + +### AccountNameAndKey ``` New-AzureStorageContext [-StorageAccountName] [-StorageAccountKey] [-Protocol ] [-Endpoint ] [] @@ -49,6 +55,12 @@ New-AzureStorageContext [-StorageAccountName] -SasToken -Envir [] ``` +### OAuthAccountEnvironment +``` +New-AzureStorageContext [-StorageAccountName] [-UseConnectedAccount] [-Protocol ] + -Environment [] +``` + ### ConnectionString ``` New-AzureStorageContext -ConnectionString [] @@ -141,6 +153,14 @@ That token is for read, add, update, and delete permissions. The second command creates a context for the account named ContosoGeneral that uses the SAS token stored in $SasToken, and then stores that context in the $Context variable. The final command lists all the blobs associated with the container named ContosoMain by using the context stored in $Context. +### Example 10: Create a context by using the OAuth Authentication +``` +C:\PS>Connect-AzureRmAccount +C:\PS> $Context = New-AzureStorageContext -StorageAccountName "myaccountname" +``` + +This command creates a context by using the OAuth Authentication. + ## PARAMETERS ### -Anonymous @@ -178,7 +198,7 @@ Specifies the endpoint for the Azure Storage context. ```yaml Type: System.String -Parameter Sets: AccountNameAndKey, AnonymousAccount, SasToken +Parameter Sets: OAuthAccount, AccountNameAndKey, AnonymousAccount, SasToken Aliases: Required: False @@ -207,7 +227,7 @@ Accept wildcard characters: False ```yaml Type: System.String -Parameter Sets: SasTokenWithAzureEnvironment +Parameter Sets: SasTokenWithAzureEnvironment, OAuthAccountEnvironment Aliases: Name, EnvironmentName Required: True @@ -237,7 +257,7 @@ Transfer Protocol (https/http). ```yaml Type: System.String -Parameter Sets: AccountNameAndKey, AccountNameAndKeyEnvironment, AnonymousAccount, AnonymousAccountEnvironment, SasToken +Parameter Sets: OAuthAccount, AccountNameAndKey, AccountNameAndKeyEnvironment, AnonymousAccount, AnonymousAccountEnvironment, SasToken, OAuthAccountEnvironment Aliases: Accepted values: Http, Https @@ -285,7 +305,7 @@ This cmdlet creates a context for the account that this parameter specifies. ```yaml Type: System.String -Parameter Sets: AccountNameAndKey, AccountNameAndKeyEnvironment, AnonymousAccount, AnonymousAccountEnvironment, SasToken, SasTokenWithAzureEnvironment +Parameter Sets: OAuthAccount, AccountNameAndKey, AccountNameAndKeyEnvironment, AnonymousAccount, AnonymousAccountEnvironment, SasToken, SasTokenWithAzureEnvironment, OAuthAccountEnvironment Aliases: Required: True @@ -295,6 +315,38 @@ Accept pipeline input: False Accept wildcard characters: False ``` +### -UseConnectedAccount +Indicates that this cmdlet creates an Azure Storage context with OAuth Authentication. +The cmdlet will use OAuth Authentication by default, when other anthentication not specified. + +```yaml +Type: SwitchParameter +Parameter Sets: OAuthAccount, OAuthAccountEnvironment +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -UseConnectedAccount +Indicates that this cmdlet creates an Azure Storage context with OAuth Authentication. +The cmdlet will use OAuth Authentication by default, when other anthentication not specified. + +```yaml +Type: SwitchParameter +Parameter Sets: OAuthAccount, OAuthAccountEnvironment +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + ### CommonParameters This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216). diff --git a/src/Storage/Commands.Storage/packages.config b/src/Storage/Commands.Storage/packages.config index b220d16135eb..98c138610e9f 100644 --- a/src/Storage/Commands.Storage/packages.config +++ b/src/Storage/Commands.Storage/packages.config @@ -6,11 +6,11 @@ - - - - - + + + + + @@ -19,7 +19,7 @@ - + @@ -28,5 +28,5 @@ - + \ No newline at end of file diff --git a/tools/Common.Dependencies.Test.targets b/tools/Common.Dependencies.Test.targets index 6fb594e839a8..387257946684 100644 --- a/tools/Common.Dependencies.Test.targets +++ b/tools/Common.Dependencies.Test.targets @@ -21,11 +21,11 @@ True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ScenarioTest.ResourceManager.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.ScenarioTest.Common.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ScenarioTest.ResourceManager.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.ScenarioTest.Common.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ServiceManagement.1.0.94-preview\lib\net452\Microsoft.WindowsAzure.Commands.ServiceManagement.Common.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ServiceManagement.1.0.96-preview\lib\net452\Microsoft.WindowsAzure.Commands.ServiceManagement.Common.dll True @@ -66,7 +66,7 @@ - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ScenarioTest.ResourceManager.1.0.94-preview\tools\ + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ScenarioTest.ResourceManager.1.0.96-preview\tools\ diff --git a/tools/Common.Dependencies.targets b/tools/Common.Dependencies.targets index a7dfb4f056b1..7399a4204440 100644 --- a/tools/Common.Dependencies.targets +++ b/tools/Common.Dependencies.targets @@ -93,67 +93,67 @@ - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Aks.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Aks.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Aks.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Aks.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authentication.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authentication.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.Abstractions.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.Abstractions.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authentication.ResourceManager.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.ResourceManager.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authentication.ResourceManager.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.ResourceManager.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authorization.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Authorization.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authorization.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Authorization.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Common.1.0.94-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Common.1.0.96-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Compute.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Compute.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Compute.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Compute.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Graph.Rbac.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Graph.RBAC.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Graph.Rbac.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Graph.RBAC.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.KeyVault.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.KeyVault.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.KeyVault.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.KeyVault.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Network.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Network.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Network.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Network.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ResourceManager.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.ResourceManager.Common.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ResourceManager.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.ResourceManager.Common.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Storage.1.0.94-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.Storage.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Storage.1.0.96-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.Storage.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Storage.Management.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Storage.Management.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Storage.Management.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Storage.Management.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Strategies.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Strategies.4.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Strategies.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Strategies.4.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Websites.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.WebSites.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Websites.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.WebSites.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Storage.1.0.94-preview\tools\ + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Storage.1.0.96-preview\tools\ \ No newline at end of file diff --git a/tools/Common.Netcore.Dependencies.Test.targets b/tools/Common.Netcore.Dependencies.Test.targets index 7f9660413fc4..7df27796d9ff 100644 --- a/tools/Common.Netcore.Dependencies.Test.targets +++ b/tools/Common.Netcore.Dependencies.Test.targets @@ -10,7 +10,7 @@ - + @@ -19,7 +19,7 @@ - $(NugetPackageRoot)microsoft.azure.powershell.scenariotest.resourcemanager\1.0.94-preview\tools\ + $(NugetPackageRoot)microsoft.azure.powershell.scenariotest.resourcemanager\1.0.96-preview\tools\ diff --git a/tools/Common.Netcore.Dependencies.targets b/tools/Common.Netcore.Dependencies.targets index cda493c7a8fa..9482eaf403b2 100644 --- a/tools/Common.Netcore.Dependencies.targets +++ b/tools/Common.Netcore.Dependencies.targets @@ -3,21 +3,21 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + @@ -26,7 +26,7 @@ - $(NugetPackageRoot)microsoft.azure.powershell.storage\1.0.94-preview\tools\ + $(NugetPackageRoot)microsoft.azure.powershell.storage\1.0.96-preview\tools\ diff --git a/tools/Common.ServiceManagement.Dependencies.Test.targets b/tools/Common.ServiceManagement.Dependencies.Test.targets index d1b9a7f070e1..f05e9effde86 100644 --- a/tools/Common.ServiceManagement.Dependencies.Test.targets +++ b/tools/Common.ServiceManagement.Dependencies.Test.targets @@ -38,12 +38,12 @@ True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ScenarioTest.1.0.94-preview\lib\net452\Microsoft.WindowsAzure.Commands.ScenarioTest.Common.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ScenarioTest.1.0.96-preview\lib\net452\Microsoft.WindowsAzure.Commands.ScenarioTest.Common.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ScenarioTest.1.0.94-preview\tools\ + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ScenarioTest.1.0.96-preview\tools\ diff --git a/tools/Common.ServiceManagement.Dependencies.targets b/tools/Common.ServiceManagement.Dependencies.targets index fde9636c31f2..13f9796a9053 100644 --- a/tools/Common.ServiceManagement.Dependencies.targets +++ b/tools/Common.ServiceManagement.Dependencies.targets @@ -186,35 +186,35 @@ - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authentication.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authentication.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.Abstractions.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.Abstractions.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authorization.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Authorization.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Authorization.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Authorization.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Common.1.0.94-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Common.1.0.96-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ServiceManagement.1.0.94-preview\lib\net452\Microsoft.WindowsAzure.Commands.ServiceManagement.Common.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.ServiceManagement.1.0.96-preview\lib\net452\Microsoft.WindowsAzure.Commands.ServiceManagement.Common.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Storage.1.0.94-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.Storage.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Storage.1.0.96-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.Storage.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Storage.Management.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Storage.Management.dll + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Storage.Management.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Storage.Management.dll True - $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Storage.1.0.94-preview\tools\ + $(LibraryNugetPackageFolder)\Microsoft.Azure.PowerShell.Storage.1.0.96-preview\tools\ \ No newline at end of file diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Aks.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Aks.1.0.94-preview.nupkg deleted file mode 100644 index d642441ca0fe..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Aks.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Aks.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Aks.1.0.96-preview.nupkg new file mode 100644 index 000000000000..0c6be53e55df Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Aks.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.1.0.94-preview.nupkg deleted file mode 100644 index 105e0e1f6954..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.1.0.96-preview.nupkg new file mode 100644 index 000000000000..370c2b708e20 Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.94-preview.nupkg deleted file mode 100644 index 57aa119b7fc6..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.96-preview.nupkg new file mode 100644 index 000000000000..43a18efaf09a Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.ResourceManager.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.ResourceManager.1.0.94-preview.nupkg deleted file mode 100644 index ee7dd55f756b..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.ResourceManager.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.ResourceManager.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.ResourceManager.1.0.96-preview.nupkg new file mode 100644 index 000000000000..663085555623 Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Authentication.ResourceManager.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Authorization.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Authorization.1.0.94-preview.nupkg deleted file mode 100644 index 3f714984f242..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Authorization.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Authorization.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Authorization.1.0.96-preview.nupkg new file mode 100644 index 000000000000..0f18cfabe920 Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Authorization.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Common.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Common.1.0.94-preview.nupkg deleted file mode 100644 index c151d0f2b648..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Common.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Common.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Common.1.0.96-preview.nupkg new file mode 100644 index 000000000000..ae88fd6579f8 Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Common.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Compute.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Compute.1.0.94-preview.nupkg deleted file mode 100644 index cd3dbfd7466e..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Compute.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Compute.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Compute.1.0.96-preview.nupkg new file mode 100644 index 000000000000..1752ddcf2df5 Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Compute.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Graph.Rbac.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Graph.Rbac.1.0.94-preview.nupkg deleted file mode 100644 index 9a0fc116badc..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Graph.Rbac.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Graph.Rbac.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Graph.Rbac.1.0.96-preview.nupkg new file mode 100644 index 000000000000..710e4b14ef6a Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Graph.Rbac.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.KeyVault.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.KeyVault.1.0.94-preview.nupkg deleted file mode 100644 index 5ef8b42c1e02..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.KeyVault.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.KeyVault.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.KeyVault.1.0.96-preview.nupkg new file mode 100644 index 000000000000..06cc84c16e6f Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.KeyVault.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Network.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Network.1.0.94-preview.nupkg deleted file mode 100644 index 2e22cbdd11ee..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Network.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Network.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Network.1.0.96-preview.nupkg new file mode 100644 index 000000000000..5e01516b14cf Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Network.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.ResourceManager.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.ResourceManager.1.0.94-preview.nupkg deleted file mode 100644 index b855b33fa2ad..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.ResourceManager.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.ResourceManager.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.ResourceManager.1.0.96-preview.nupkg new file mode 100644 index 000000000000..610a909103d6 Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.ResourceManager.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.ScenarioTest.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.ScenarioTest.1.0.94-preview.nupkg deleted file mode 100644 index 0fb763fe6dce..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.ScenarioTest.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.ScenarioTest.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.ScenarioTest.1.0.96-preview.nupkg new file mode 100644 index 000000000000..6a19a7e4f380 Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.ScenarioTest.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.ScenarioTest.ResourceManager.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.ScenarioTest.ResourceManager.1.0.94-preview.nupkg deleted file mode 100644 index eb08a8f516ef..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.ScenarioTest.ResourceManager.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.ScenarioTest.ResourceManager.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.ScenarioTest.ResourceManager.1.0.96-preview.nupkg new file mode 100644 index 000000000000..dc406153a1f3 Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.ScenarioTest.ResourceManager.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.ServiceManagement.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.ServiceManagement.1.0.94-preview.nupkg deleted file mode 100644 index 37ad9e49a5a2..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.ServiceManagement.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.ServiceManagement.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.ServiceManagement.1.0.96-preview.nupkg new file mode 100644 index 000000000000..e692b0ff0501 Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.ServiceManagement.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Storage.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Storage.1.0.94-preview.nupkg deleted file mode 100644 index 05448f88ec1b..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Storage.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Storage.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Storage.1.0.96-preview.nupkg new file mode 100644 index 000000000000..b9def3dc456e Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Storage.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Storage.Management.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Storage.Management.1.0.94-preview.nupkg deleted file mode 100644 index a9ca005f119c..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Storage.Management.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Storage.Management.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Storage.Management.1.0.96-preview.nupkg new file mode 100644 index 000000000000..4c447af23d54 Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Storage.Management.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Strategies.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Strategies.1.0.94-preview.nupkg deleted file mode 100644 index b068c8fb8208..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Strategies.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Strategies.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Strategies.1.0.96-preview.nupkg new file mode 100644 index 000000000000..740085fc7259 Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Strategies.1.0.96-preview.nupkg differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Websites.1.0.94-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Websites.1.0.94-preview.nupkg deleted file mode 100644 index c0e77f6645d6..000000000000 Binary files a/tools/LocalFeed/Microsoft.Azure.PowerShell.Websites.1.0.94-preview.nupkg and /dev/null differ diff --git a/tools/LocalFeed/Microsoft.Azure.PowerShell.Websites.1.0.96-preview.nupkg b/tools/LocalFeed/Microsoft.Azure.PowerShell.Websites.1.0.96-preview.nupkg new file mode 100644 index 000000000000..68cefb5ca483 Binary files /dev/null and b/tools/LocalFeed/Microsoft.Azure.PowerShell.Websites.1.0.96-preview.nupkg differ diff --git a/tools/RepoTasks/RepoTasks.CmdletsForTest/RepoTasks.CmdletsForTest.csproj b/tools/RepoTasks/RepoTasks.CmdletsForTest/RepoTasks.CmdletsForTest.csproj index e701c7708469..fd4a815768e7 100644 --- a/tools/RepoTasks/RepoTasks.CmdletsForTest/RepoTasks.CmdletsForTest.csproj +++ b/tools/RepoTasks/RepoTasks.CmdletsForTest/RepoTasks.CmdletsForTest.csproj @@ -37,7 +37,7 @@ ..\..\..\src\packages\Microsoft.ApplicationInsights.1.2.0\lib\net45\Microsoft.ApplicationInsights.dll - ..\..\..\src\packages\Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.Abstractions.dll + ..\..\..\src\packages\Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.Abstractions.dll ..\..\..\src\packages\Microsoft.Azure.Common.2.1.0\lib\net45\Microsoft.Azure.Common.dll @@ -58,7 +58,7 @@ ..\..\..\src\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.Extensions.Desktop.dll - ..\..\..\src\packages\Microsoft.Azure.PowerShell.Common.1.0.94-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.dll + ..\..\..\src\packages\Microsoft.Azure.PowerShell.Common.1.0.96-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.dll ..\..\..\src\packages\Microsoft.WindowsAzure.Management.4.1.1\lib\net40\Microsoft.WindowsAzure.Management.dll diff --git a/tools/RepoTasks/RepoTasks.CmdletsForTest/packages.config b/tools/RepoTasks/RepoTasks.CmdletsForTest/packages.config index bd73747dcbc0..1e23fe42c242 100644 --- a/tools/RepoTasks/RepoTasks.CmdletsForTest/packages.config +++ b/tools/RepoTasks/RepoTasks.CmdletsForTest/packages.config @@ -5,8 +5,8 @@ - - + + diff --git a/tools/RepoTasks/RepoTasks.RemoteWorker/RepoTasks.RemoteWorker.csproj b/tools/RepoTasks/RepoTasks.RemoteWorker/RepoTasks.RemoteWorker.csproj index d7cbea399cee..28c3c1dcb9cf 100644 --- a/tools/RepoTasks/RepoTasks.RemoteWorker/RepoTasks.RemoteWorker.csproj +++ b/tools/RepoTasks/RepoTasks.RemoteWorker/RepoTasks.RemoteWorker.csproj @@ -37,7 +37,7 @@ ..\..\..\src\packages\Microsoft.ApplicationInsights.1.2.0\lib\net45\Microsoft.ApplicationInsights.dll - ..\..\..\src\packages\Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.Abstractions.dll + ..\..\..\src\packages\Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.Abstractions.dll ..\..\..\src\packages\Microsoft.Azure.Common.2.1.0\lib\net45\Microsoft.Azure.Common.dll @@ -58,7 +58,7 @@ ..\..\..\src\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.Extensions.Desktop.dll - ..\..\..\src\packages\Microsoft.Azure.PowerShell.Common.1.0.94-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.dll + ..\..\..\src\packages\Microsoft.Azure.PowerShell.Common.1.0.96-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.dll ..\..\..\src\packages\Microsoft.WindowsAzure.Management.4.1.1\lib\net40\Microsoft.WindowsAzure.Management.dll diff --git a/tools/RepoTasks/RepoTasks.RemoteWorker/packages.config b/tools/RepoTasks/RepoTasks.RemoteWorker/packages.config index bd73747dcbc0..1e23fe42c242 100644 --- a/tools/RepoTasks/RepoTasks.RemoteWorker/packages.config +++ b/tools/RepoTasks/RepoTasks.RemoteWorker/packages.config @@ -5,8 +5,8 @@ - - + + diff --git a/tools/StaticAnalysis/StaticAnalysis.csproj b/tools/StaticAnalysis/StaticAnalysis.csproj index 0f436fbd8ad9..3829d2dce57d 100644 --- a/tools/StaticAnalysis/StaticAnalysis.csproj +++ b/tools/StaticAnalysis/StaticAnalysis.csproj @@ -54,10 +54,10 @@ ..\..\src\packages\Microsoft.Azure.Common.2.1.0\lib\net45\Microsoft.Azure.Common.NetFramework.dll - ..\..\src\packages\Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.94-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.Abstractions.dll + ..\..\src\packages\Microsoft.Azure.PowerShell.Authentication.Abstractions.1.0.96-preview\lib\net452\Microsoft.Azure.Commands.Common.Authentication.Abstractions.dll - ..\..\src\packages\Microsoft.Azure.PowerShell.Common.1.0.94-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.dll + ..\..\src\packages\Microsoft.Azure.PowerShell.Common.1.0.96-preview\lib\net452\Microsoft.WindowsAzure.Commands.Common.dll ..\..\src\packages\Microsoft.Rest.ClientRuntime.2.3.12\lib\net452\Microsoft.Rest.ClientRuntime.dll diff --git a/tools/StaticAnalysis/packages.config b/tools/StaticAnalysis/packages.config index f94f955370de..02c7c5700b35 100644 --- a/tools/StaticAnalysis/packages.config +++ b/tools/StaticAnalysis/packages.config @@ -7,8 +7,8 @@ - - + +