diff --git a/src/Network/Network.sln b/src/Network/Network.sln
index b8299a1c3438..a082d0693502 100644
--- a/src/Network/Network.sln
+++ b/src/Network/Network.sln
@@ -38,6 +38,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Sql.LegacySdk", "..\Sql\Sql
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PrivateDns", "..\PrivateDns\PrivateDns\PrivateDns.csproj", "{70D3A1D4-42FE-4697-AFC7-AC0FEAB0420B}"
EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "KeyVault", "..\KeyVault\KeyVault\KeyVault.csproj", "{5423D705-89D5-47D8-8298-BF1342D3A808}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -112,10 +114,10 @@ Global
{70D3A1D4-42FE-4697-AFC7-AC0FEAB0420B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{70D3A1D4-42FE-4697-AFC7-AC0FEAB0420B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{70D3A1D4-42FE-4697-AFC7-AC0FEAB0420B}.Release|Any CPU.Build.0 = Release|Any CPU
- {AD8D31C1-3C84-4213-A13A-A21C7440E591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {AD8D31C1-3C84-4213-A13A-A21C7440E591}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {AD8D31C1-3C84-4213-A13A-A21C7440E591}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {AD8D31C1-3C84-4213-A13A-A21C7440E591}.Release|Any CPU.Build.0 = Release|Any CPU
+ {5423D705-89D5-47D8-8298-BF1342D3A808}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {5423D705-89D5-47D8-8298-BF1342D3A808}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {5423D705-89D5-47D8-8298-BF1342D3A808}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {5423D705-89D5-47D8-8298-BF1342D3A808}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -131,6 +133,7 @@ Global
{1DE566DF-628F-4B55-8EBE-5077293169D8} = {95C16AED-FD57-42A0-86C3-2CF4300A4817}
{B71E1AFD-6A00-49BA-B18E-BF710B531E73} = {95C16AED-FD57-42A0-86C3-2CF4300A4817}
{70D3A1D4-42FE-4697-AFC7-AC0FEAB0420B} = {95C16AED-FD57-42A0-86C3-2CF4300A4817}
+ {5423D705-89D5-47D8-8298-BF1342D3A808} = {95C16AED-FD57-42A0-86C3-2CF4300A4817}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {81FE5D8D-D707-4DBC-9782-95E44EA873C3}
diff --git a/src/Storage/Storage.Management/ChangeLog.md b/src/Storage/Storage.Management/ChangeLog.md
index 1786331ca6a8..87e56286d116 100644
--- a/src/Storage/Storage.Management/ChangeLog.md
+++ b/src/Storage/Storage.Management/ChangeLog.md
@@ -20,12 +20,20 @@
## Upcoming Release
* Fixed upload blob fail by upgrade to Microsoft.Azure.Storage.DataMovement 2.0.0 [#12220]
* Supported Point In Time Restore
- - Enable-AzStorageBlobRestorePolicy
- - Disable-AzStorageBlobRestorePolicy
- - New-AzStorageBlobRangeToRestore
- - Restore-AzStorageBlobRange
+ - `Enable-AzStorageBlobRestorePolicy`
+ - `Disable-AzStorageBlobRestorePolicy`
+ - `New-AzStorageBlobRangeToRestore`
+ - `Restore-AzStorageBlobRange`
* Supported get blob restore status of Storage account by run get-AzureRMStorageAccount with parameter -IncludeBlobRestoreStatus
- - Get-AzureRMStorageAccount
+ - `Get-AzureRMStorageAccount`
+* Added breaking change warning message for upcoming cmdlet output change
+ - `Get-AzStorageContainerStoredAccessPolicy`
+ - `Set-AzStorageContainerStoredAccessPolicy`
+ - `Set-AzStorageAccountManagementPolicy`
+ - `Get-AzStorageAccountManagementPolicy`
+ - `Add-AzStorageAccountManagementPolicyAction`
+ - `New-AzStorageAccountManagementPolicyRule`
+
## Version 2.5.0
* Supported blob query acceleration
diff --git a/src/Storage/Storage.Management/StorageAccount/AddAzureStorageAccountManagementPolicyAction.cs b/src/Storage/Storage.Management/StorageAccount/AddAzureStorageAccountManagementPolicyAction.cs
index bed1f5d1ed72..fbf1b13d06df 100644
--- a/src/Storage/Storage.Management/StorageAccount/AddAzureStorageAccountManagementPolicyAction.cs
+++ b/src/Storage/Storage.Management/StorageAccount/AddAzureStorageAccountManagementPolicyAction.cs
@@ -16,11 +16,13 @@
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
using Microsoft.Azure.Management.Storage;
using Microsoft.Azure.Management.Storage.Models;
+using Microsoft.WindowsAzure.Commands.Common.CustomAttributes;
using System.Globalization;
using System.Management.Automation;
namespace Microsoft.Azure.Commands.Management.Storage
{
+ [CmdletOutputBreakingChange(typeof(PSManagementPolicyActionGroup), ChangeDescription = "The type of sub child property DaysAfterModificationGreaterThan will change from int to int? in a future release.")]
[Cmdlet("Add", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "StorageAccountManagementPolicyAction", DefaultParameterSetName = BaseBlobParameterSet), OutputType(typeof(PSManagementPolicyActionGroup))]
public class AddAzureStorageAccountManagementPolicyActionCommand : StorageAccountBaseCmdlet
{
diff --git a/src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountManagementPolicy.cs b/src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountManagementPolicy.cs
index 9e145c57778b..2b31f5d1a160 100644
--- a/src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountManagementPolicy.cs
+++ b/src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountManagementPolicy.cs
@@ -17,10 +17,12 @@
using Microsoft.Azure.Management.Internal.Resources.Utilities.Models;
using Microsoft.Azure.Management.Storage;
using Microsoft.Azure.Management.Storage.Models;
+using Microsoft.WindowsAzure.Commands.Common.CustomAttributes;
using System.Management.Automation;
namespace Microsoft.Azure.Commands.Management.Storage
{
+ [CmdletOutputBreakingChange(typeof(PSManagementPolicyActionGroup), ChangeDescription = "The type of sub child property DaysAfterModificationGreaterThan will change from int to int? in a future release.")]
[Cmdlet("Get", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "StorageAccountManagementPolicy", DefaultParameterSetName = AccountNameParameterSet), OutputType(typeof(PSManagementPolicy))]
public class GetAzureStorageAccountManagementPolicyCommand : StorageAccountBaseCmdlet
{
diff --git a/src/Storage/Storage.Management/StorageAccount/NewAzureStorageAccountManagementPolicyRule.cs b/src/Storage/Storage.Management/StorageAccount/NewAzureStorageAccountManagementPolicyRule.cs
index a623e516a0b6..d40d90d9f27d 100644
--- a/src/Storage/Storage.Management/StorageAccount/NewAzureStorageAccountManagementPolicyRule.cs
+++ b/src/Storage/Storage.Management/StorageAccount/NewAzureStorageAccountManagementPolicyRule.cs
@@ -16,10 +16,12 @@
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
using Microsoft.Azure.Management.Storage;
using Microsoft.Azure.Management.Storage.Models;
+using Microsoft.WindowsAzure.Commands.Common.CustomAttributes;
using System.Management.Automation;
namespace Microsoft.Azure.Commands.Management.Storage
{
+ [CmdletOutputBreakingChange(typeof(PSManagementPolicyActionGroup), ChangeDescription = "The type of sub child property DaysAfterModificationGreaterThan will change from int to int? in a future release.")]
[Cmdlet("New", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "StorageAccountManagementPolicyRule"), OutputType(typeof(PSManagementPolicyRule))]
public class NewAzureStorageAccountManagementPolicyRuleCommand : StorageAccountBaseCmdlet
{
diff --git a/src/Storage/Storage.Management/StorageAccount/SetAzureStorageAccountManagementPolicy.cs b/src/Storage/Storage.Management/StorageAccount/SetAzureStorageAccountManagementPolicy.cs
index 669cd008d924..40da12d5470f 100644
--- a/src/Storage/Storage.Management/StorageAccount/SetAzureStorageAccountManagementPolicy.cs
+++ b/src/Storage/Storage.Management/StorageAccount/SetAzureStorageAccountManagementPolicy.cs
@@ -21,9 +21,11 @@
using System.Globalization;
using System.Collections.Generic;
using Microsoft.Azure.Management.Internal.Resources.Utilities.Models;
+using Microsoft.WindowsAzure.Commands.Common.CustomAttributes;
namespace Microsoft.Azure.Commands.Management.Storage
{
+ [CmdletOutputBreakingChange(typeof(PSManagementPolicyActionGroup), ChangeDescription = "The type of sub child property DaysAfterModificationGreaterThan will change from int to int? in a future release.")]
[Cmdlet("Set", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "StorageAccountManagementPolicy", SupportsShouldProcess = true, DefaultParameterSetName = AccountNamePolicyRuleParameterSet), OutputType(typeof(PSManagementPolicy))]
public class SetAzureStorageAccountManagementPolicyCommand : StorageAccountBaseCmdlet
{
diff --git a/src/Storage/Storage/Blob/Cmdlet/GetAzureStorageContainerStoredAccessPolicy.cs b/src/Storage/Storage/Blob/Cmdlet/GetAzureStorageContainerStoredAccessPolicy.cs
index 15520c0c9946..d8f73a388b6e 100644
--- a/src/Storage/Storage/Blob/Cmdlet/GetAzureStorageContainerStoredAccessPolicy.cs
+++ b/src/Storage/Storage/Blob/Cmdlet/GetAzureStorageContainerStoredAccessPolicy.cs
@@ -16,6 +16,7 @@ namespace Microsoft.WindowsAzure.Commands.Storage.Blob.Cmdlet
{
using Common;
using Microsoft.Azure.Storage.Blob;
+ using Microsoft.WindowsAzure.Commands.Common.CustomAttributes;
using Model.Contract;
using System;
using System.Globalization;
@@ -26,6 +27,7 @@ namespace Microsoft.WindowsAzure.Commands.Storage.Blob.Cmdlet
///
/// create a new azure container
///
+ [CmdletOutputBreakingChange(typeof(SharedAccessBlobPolicy), ChangeDescription = "The output type will change from 'SharedAccessBlobPolicy' to 'PSObject', with the child property 'Permissions' type change from enum to string in a future release.")]
[Cmdlet("Get", Azure.Commands.ResourceManager.Common.AzureRMConstants.AzurePrefix + "StorageContainerStoredAccessPolicy"), OutputType(typeof(SharedAccessBlobPolicy))]
public class GetAzureStorageContainerStoredAccessPolicyCommand : StorageCloudBlobCmdletBase
{
diff --git a/src/Storage/Storage/Blob/Cmdlet/SetAzureStorageContainerStoredAccessPolicy.cs b/src/Storage/Storage/Blob/Cmdlet/SetAzureStorageContainerStoredAccessPolicy.cs
index 85396a860ea6..29bfbf5884d9 100644
--- a/src/Storage/Storage/Blob/Cmdlet/SetAzureStorageContainerStoredAccessPolicy.cs
+++ b/src/Storage/Storage/Blob/Cmdlet/SetAzureStorageContainerStoredAccessPolicy.cs
@@ -16,6 +16,7 @@ namespace Microsoft.WindowsAzure.Commands.Storage.Blob.Cmdlet
{
using Common;
using Microsoft.Azure.Storage.Blob;
+ using Microsoft.WindowsAzure.Commands.Common.CustomAttributes;
using Model.Contract;
using System;
using System.Globalization;
@@ -25,6 +26,7 @@ namespace Microsoft.WindowsAzure.Commands.Storage.Blob.Cmdlet
///
/// create a new azure container
///
+ [CmdletOutputBreakingChange(typeof(SharedAccessBlobPolicy), ChangeDescription = "The output type will change from 'SharedAccessBlobPolicy' to 'PSObject', with the child property 'Permissions' type change from enum to string in a future release.")]
[Cmdlet("Set", Azure.Commands.ResourceManager.Common.AzureRMConstants.AzurePrefix + "StorageContainerStoredAccessPolicy", SupportsShouldProcess = true), OutputType(typeof(String))]
public class SetAzureStorageContainerStoredAccessPolicyCommand : StorageCloudBlobCmdletBase
{