diff --git a/src/Storage/Storage.Management/Models/PSNetworkRule.cs b/src/Storage/Storage.Management/Models/PSNetworkRule.cs
index 0bc50bcbfcc8..31599ce10316 100644
--- a/src/Storage/Storage.Management/Models/PSNetworkRule.cs
+++ b/src/Storage/Storage.Management/Models/PSNetworkRule.cs
@@ -12,7 +12,6 @@
// limitations under the License.
// ----------------------------------------------------------------------------------
-using Microsoft.Azure.Management.Storage.Models;
using System;
using System.Collections.Generic;
using Microsoft.WindowsAzure.Commands.Common.Attributes;
diff --git a/src/Storage/Storage.Management/Storage.Management.csproj b/src/Storage/Storage.Management/Storage.Management.csproj
index 8808a81da49d..faa96b846130 100644
--- a/src/Storage/Storage.Management/Storage.Management.csproj
+++ b/src/Storage/Storage.Management/Storage.Management.csproj
@@ -18,11 +18,7 @@
-
-
-
-
diff --git a/src/Storage/Storage.Management/StorageAccount/AddAzureStorageAccountNetworkRule.cs b/src/Storage/Storage.Management/StorageAccount/AddAzureStorageAccountNetworkRule.cs
index 44712b031160..57f060f70d88 100644
--- a/src/Storage/Storage.Management/StorageAccount/AddAzureStorageAccountNetworkRule.cs
+++ b/src/Storage/Storage.Management/StorageAccount/AddAzureStorageAccountNetworkRule.cs
@@ -12,15 +12,14 @@
// limitations under the License.
// ----------------------------------------------------------------------------------
-using System.Collections;
-using System.Management.Automation;
-using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
-using Microsoft.Azure.Management.Storage;
-using Microsoft.Azure.Management.Storage.Models;
-using StorageModels = Microsoft.Azure.Management.Storage.Models;
using Microsoft.Azure.Commands.Management.Storage.Models;
-using System.Collections.Generic;
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
+using System.Collections;
+using System.Collections.Generic;
+using System.Management.Automation;
+using Track2 = Azure.ResourceManager.Storage;
+using Track2Models = Azure.ResourceManager.Storage.Models;
namespace Microsoft.Azure.Commands.Management.Storage
{
@@ -132,26 +131,23 @@ public override void ExecuteCmdlet()
if (ShouldProcess(this.Name, "Add Storage Account NetworkRules"))
{
- var storageAccount = this.StorageClient.StorageAccounts.GetProperties(
- this.ResourceGroupName,
- this.Name);
- NetworkRuleSet storageACL = storageAccount.NetworkRuleSet;
+ Track2.StorageAccountResource storageAccount = this.StorageClientTrack2
+ .GetStorageAccount(this.ResourceGroupName, this.Name).Get();
+ Track2Models.NetworkRuleSet storageACL = storageAccount.Data.NetworkRuleSet;
if (storageACL == null)
{
- storageACL = new NetworkRuleSet();
+ storageACL = new Track2Models.NetworkRuleSet(Track2Models.DefaultAction.Allow);
}
bool ruleChanged = false;
switch (ParameterSetName)
{
case NetWorkRuleStringParameterSet:
- if (storageACL.VirtualNetworkRules == null)
- storageACL.VirtualNetworkRules = new List();
foreach (string s in VirtualNetworkResourceId)
{
bool ruleExist = false;
- foreach (VirtualNetworkRule originRule in storageACL.VirtualNetworkRules)
+ foreach (Track2Models.VirtualNetworkRule originRule in storageACL.VirtualNetworkRules)
{
if (originRule.VirtualNetworkResourceId.Equals(s, System.StringComparison.InvariantCultureIgnoreCase))
{
@@ -162,19 +158,17 @@ public override void ExecuteCmdlet()
}
if (!ruleExist)
{
- VirtualNetworkRule rule = new VirtualNetworkRule(s);
+ Track2Models.VirtualNetworkRule rule = new Track2Models.VirtualNetworkRule(s);
storageACL.VirtualNetworkRules.Add(rule);
ruleChanged = true;
}
}
break;
case IpRuleStringParameterSet:
- if (storageACL.IpRules == null)
- storageACL.IpRules = new List();
foreach (string s in IPAddressOrRange)
{
bool ruleExist = false;
- foreach (IPRule originRule in storageACL.IpRules)
+ foreach (Track2Models.IPRule originRule in storageACL.IPRules)
{
if (originRule.IPAddressOrRange.Equals(s, System.StringComparison.InvariantCultureIgnoreCase))
{
@@ -185,19 +179,15 @@ public override void ExecuteCmdlet()
}
if (!ruleExist)
{
- IPRule rule = new IPRule(s);
- storageACL.IpRules.Add(rule);
+ Track2Models.IPRule rule = new Track2Models.IPRule(s);
+ storageACL.IPRules.Add(rule);
ruleChanged = true;
}
}
break;
case ResourceAccessRuleStringParameterSet:
- if (storageACL.ResourceAccessRules == null)
- {
- storageACL.ResourceAccessRules = new List();
- }
bool ResourceAccessruleExist = false;
- foreach (ResourceAccessRule originRule in storageACL.ResourceAccessRules)
+ foreach (Track2Models.ResourceAccessRule originRule in storageACL.ResourceAccessRules)
{
if (originRule.TenantId.Equals(this.TenantId, System.StringComparison.InvariantCultureIgnoreCase)
&& originRule.ResourceId.Equals(this.ResourceId, System.StringComparison.InvariantCultureIgnoreCase))
@@ -209,18 +199,19 @@ public override void ExecuteCmdlet()
}
if (!ResourceAccessruleExist)
{
- ResourceAccessRule rule = new ResourceAccessRule(this.TenantId, this.ResourceId);
+ Track2Models.ResourceAccessRule rule = new Track2Models.ResourceAccessRule{
+ TenantId = this.TenantId,
+ ResourceId = this.ResourceId,
+ };
storageACL.ResourceAccessRules.Add(rule);
ruleChanged = true;
}
break;
case NetworkRuleObjectParameterSet:
- if (storageACL.VirtualNetworkRules == null)
- storageACL.VirtualNetworkRules = new List();
foreach (PSVirtualNetworkRule rule in VirtualNetworkRule)
{
bool ruleExist = false;
- foreach (VirtualNetworkRule originRule in storageACL.VirtualNetworkRules)
+ foreach (Track2Models.VirtualNetworkRule originRule in storageACL.VirtualNetworkRules)
{
if (originRule.VirtualNetworkResourceId.Equals(rule.VirtualNetworkResourceId, System.StringComparison.InvariantCultureIgnoreCase))
{
@@ -237,14 +228,10 @@ public override void ExecuteCmdlet()
}
break;
case ResourceAccessRuleObjectParameterSet:
- if (storageACL.ResourceAccessRules == null)
- {
- storageACL.ResourceAccessRules = new List();
- }
foreach (PSResourceAccessRule rule in ResourceAccessRule)
{
bool ruleExist = false;
- foreach (ResourceAccessRule originRule in storageACL.ResourceAccessRules)
+ foreach (Track2Models.ResourceAccessRule originRule in storageACL.ResourceAccessRules)
{
if (originRule.TenantId.Equals(rule.TenantId, System.StringComparison.InvariantCultureIgnoreCase)
&& originRule.ResourceId.Equals(rule.ResourceId, System.StringComparison.InvariantCultureIgnoreCase))
@@ -263,12 +250,10 @@ public override void ExecuteCmdlet()
}
break;
case IpRuleObjectParameterSet:
- if (storageACL.IpRules == null)
- storageACL.IpRules = new List();
foreach (PSIpRule rule in IPRule)
{
bool ruleExist = false;
- foreach (IPRule originRule in storageACL.IpRules)
+ foreach (Track2Models.IPRule originRule in storageACL.IPRules)
{
if (originRule.IPAddressOrRange.Equals(rule.IPAddressOrRange, System.StringComparison.InvariantCultureIgnoreCase))
{
@@ -279,8 +264,7 @@ public override void ExecuteCmdlet()
}
if (!ruleExist)
{
-
- storageACL.IpRules.Add(PSNetworkRuleSet.ParseStorageNetworkRuleIPRule(rule));
+ storageACL.IPRules.Add(PSNetworkRuleSet.ParseStorageNetworkRuleIPRule(rule));
ruleChanged = true;
}
}
@@ -289,30 +273,31 @@ public override void ExecuteCmdlet()
if (ruleChanged)
{
- StorageAccountUpdateParameters updateParameters = new StorageAccountUpdateParameters();
- updateParameters.NetworkRuleSet = storageACL;
+ Track2Models.StorageAccountPatch patch = new Track2Models.StorageAccountPatch();
+ patch.NetworkRuleSet = storageACL;
- var updatedAccountResponse = this.StorageClient.StorageAccounts.Update(
- this.ResourceGroupName,
- this.Name,
- updateParameters);
+ Track2.StorageAccountResource updatedStorageAccount = this.StorageClientTrack2
+ .GetStorageAccount(this.ResourceGroupName, this.Name)
+ .Update(patch);
- storageAccount = this.StorageClient.StorageAccounts.GetProperties(this.ResourceGroupName, this.Name);
+ storageAccount = this.StorageClientTrack2
+ .GetStorageAccount(this.ResourceGroupName, this.Name)
+ .Get();
}
switch (ParameterSetName)
{
case NetWorkRuleStringParameterSet:
case NetworkRuleObjectParameterSet:
- WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.NetworkRuleSet).VirtualNetworkRules);
+ WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.Data.NetworkRuleSet).VirtualNetworkRules);
break;
case IpRuleStringParameterSet:
case IpRuleObjectParameterSet:
- WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.NetworkRuleSet).IpRules);
+ WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.Data.NetworkRuleSet).IpRules);
break;
case ResourceAccessRuleStringParameterSet:
case ResourceAccessRuleObjectParameterSet:
- WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.NetworkRuleSet).ResourceAccessRules);
+ WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.Data.NetworkRuleSet).ResourceAccessRules);
break;
}
}
diff --git a/src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountNetworkRuleSet.cs b/src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountNetworkRuleSet.cs
index b7fec3ad1c9d..93a71c73ebec 100644
--- a/src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountNetworkRuleSet.cs
+++ b/src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountNetworkRuleSet.cs
@@ -12,15 +12,15 @@
// limitations under the License.
// ----------------------------------------------------------------------------------
+using Microsoft.Azure.Commands.Management.Storage.Models;
+using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
using System.Collections;
+using System.Collections.Generic;
using System.Management.Automation;
-using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
-using Microsoft.Azure.Management.Storage;
-using Microsoft.Azure.Management.Storage.Models;
using StorageModels = Microsoft.Azure.Management.Storage.Models;
-using Microsoft.Azure.Commands.Management.Storage.Models;
-using System.Collections.Generic;
-using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+using Track2 = Azure.ResourceManager.Storage;
+using Track2Models = Azure.ResourceManager.Storage.Models;
namespace Microsoft.Azure.Commands.Management.Storage
{
@@ -49,12 +49,12 @@ public override void ExecuteCmdlet()
{
base.ExecuteCmdlet();
- var storageAccount = this.StorageClient.StorageAccounts.GetProperties(
- this.ResourceGroupName,
- this.Name);
- if (storageAccount.NetworkRuleSet != null)
+ Track2.StorageAccountResource account = this.StorageClientTrack2.GetStorageAccount(this.ResourceGroupName, this.Name)
+ .Get();
+
+ if (account.Data.NetworkRuleSet != null)
{
- WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.NetworkRuleSet));
+ WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(account.Data.NetworkRuleSet));
}
}
}
diff --git a/src/Storage/Storage.Management/StorageAccount/RemoveAzureStorageAccountNetworkRule.cs b/src/Storage/Storage.Management/StorageAccount/RemoveAzureStorageAccountNetworkRule.cs
index ee4956c43ce3..a773e38acdcd 100644
--- a/src/Storage/Storage.Management/StorageAccount/RemoveAzureStorageAccountNetworkRule.cs
+++ b/src/Storage/Storage.Management/StorageAccount/RemoveAzureStorageAccountNetworkRule.cs
@@ -12,16 +12,16 @@
// limitations under the License.
// ----------------------------------------------------------------------------------
+using Microsoft.Azure.Commands.Management.Storage.Models;
+using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
+using System;
using System.Collections;
+using System.Collections.Generic;
using System.Management.Automation;
-using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
-using Microsoft.Azure.Management.Storage;
-using Microsoft.Azure.Management.Storage.Models;
using StorageModels = Microsoft.Azure.Management.Storage.Models;
-using Microsoft.Azure.Commands.Management.Storage.Models;
-using System.Collections.Generic;
-using System;
-using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+using Track2 = Azure.ResourceManager.Storage;
+using Track2Models = Azure.ResourceManager.Storage.Models;
namespace Microsoft.Azure.Commands.Management.Storage
{
@@ -132,51 +132,45 @@ public override void ExecuteCmdlet()
if (ShouldProcess(this.Name, "Remove Storage Account Networkrules"))
{
- var storageAccount = this.StorageClient.StorageAccounts.GetProperties(
- this.ResourceGroupName,
- this.Name);
- NetworkRuleSet storageACL = storageAccount.NetworkRuleSet;
+ Track2.StorageAccountResource storageAccount = this.StorageClientTrack2
+ .GetStorageAccount(this.ResourceGroupName, this.Name)
+ .Get();
+ Track2Models.NetworkRuleSet storageACL = storageAccount.Data.NetworkRuleSet;
if (storageACL == null)
{
- storageACL = new NetworkRuleSet();
+ storageACL = new Track2Models.NetworkRuleSet(Track2Models.DefaultAction.Allow);
}
switch (ParameterSetName)
{
case NetWorkRuleStringParameterSet:
- if (storageACL.VirtualNetworkRules == null)
- storageACL.VirtualNetworkRules = new List();
foreach (string s in VirtualNetworkResourceId)
{
- VirtualNetworkRule rule = new VirtualNetworkRule(s);
+ Track2Models.VirtualNetworkRule rule = new Track2Models.VirtualNetworkRule(s);
if (!RemoveNetworkRule(storageACL.VirtualNetworkRules, rule))
throw new ArgumentOutOfRangeException("VirtualNetworkResourceId", String.Format("Can't remove VirtualNetworkRule with specific ResourceId since not exist: {0}", rule.VirtualNetworkResourceId));
}
break;
case IpRuleStringParameterSet:
- if (storageACL.IpRules == null)
- storageACL.IpRules = new List();
foreach (string s in IPAddressOrRange)
{
- IPRule rule = new IPRule(s);
- if (!RemoveIpRule(storageACL.IpRules, rule))
+ Track2Models.IPRule rule = new Track2Models.IPRule(s);
+ if (!RemoveIpRule(storageACL.IPRules, rule))
throw new ArgumentOutOfRangeException("IPAddressOrRange", String.Format("Can't remove IpRule with specific IPAddressOrRange since not exist: {0}", rule.IPAddressOrRange));
}
break;
case ResourceAccessRuleStringParameterSet:
- if (storageACL.ResourceAccessRules == null)
+ Track2Models.ResourceAccessRule resourceaccessrule = new Track2Models.ResourceAccessRule
{
- storageACL.ResourceAccessRules = new List();
- }
- ResourceAccessRule resourceaccessrule = new ResourceAccessRule(this.TenantId, this.ResourceId);
+ ResourceId = this.ResourceId,
+ TenantId = this.TenantId
+ };
if (!RemoveResourceAccessRule(storageACL.ResourceAccessRules, resourceaccessrule))
throw new ArgumentOutOfRangeException("TenantId, ResourceId", String.Format("Can't remove ResourceAccessRule since not exist, TenantId: {0}, ResourceId : {1}", resourceaccessrule.TenantId, resourceaccessrule.ResourceId));
break;
case NetworkRuleObjectParameterSet:
- if (storageACL.VirtualNetworkRules == null)
- storageACL.VirtualNetworkRules = new List();
foreach (PSVirtualNetworkRule rule in VirtualNetworkRule)
{
if (!RemoveNetworkRule(storageACL.VirtualNetworkRules, PSNetworkRuleSet.ParseStorageNetworkRuleVirtualNetworkRule(rule)))
@@ -184,19 +178,13 @@ public override void ExecuteCmdlet()
}
break;
case IpRuleObjectParameterSet:
- if (storageACL.IpRules == null)
- storageACL.IpRules = new List();
foreach (PSIpRule rule in IPRule)
{
- if (!RemoveIpRule(storageACL.IpRules, PSNetworkRuleSet.ParseStorageNetworkRuleIPRule(rule)))
+ if (!RemoveIpRule(storageACL.IPRules, PSNetworkRuleSet.ParseStorageNetworkRuleIPRule(rule)))
throw new ArgumentOutOfRangeException("IPRule", String.Format("Can't remove IpRule with specific IPAddressOrRange since not exist: {0}", rule.IPAddressOrRange));
}
break;
case ResourceAccessRuleObjectParameterSet:
- if (storageACL.ResourceAccessRules == null)
- {
- storageACL.ResourceAccessRules = new List();
- }
foreach (PSResourceAccessRule rule in this.ResourceAccessRule)
{
if (!RemoveResourceAccessRule(storageACL.ResourceAccessRules, PSNetworkRuleSet.ParseStorageResourceAccessRule(rule)))
@@ -205,29 +193,27 @@ public override void ExecuteCmdlet()
break;
}
- StorageAccountUpdateParameters updateParameters = new StorageAccountUpdateParameters();
- updateParameters.NetworkRuleSet = storageACL;
-
- var updatedAccountResponse = this.StorageClient.StorageAccounts.Update(
- this.ResourceGroupName,
- this.Name,
- updateParameters);
+ Track2Models.StorageAccountPatch patch = new Track2Models.StorageAccountPatch();
+ patch.NetworkRuleSet = storageACL;
+ var updatedStorageAccount = this.StorageClientTrack2
+ .GetStorageAccount(this.ResourceGroupName, this.Name)
+ .Update(patch);
- storageAccount = this.StorageClient.StorageAccounts.GetProperties(this.ResourceGroupName, this.Name);
+ storageAccount = this.StorageClientTrack2.GetStorageAccount(this.ResourceGroupName, this.Name).Get();
switch (ParameterSetName)
{
case NetWorkRuleStringParameterSet:
case NetworkRuleObjectParameterSet:
- WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.NetworkRuleSet).VirtualNetworkRules);
+ WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.Data.NetworkRuleSet).VirtualNetworkRules);
break;
case IpRuleStringParameterSet:
case IpRuleObjectParameterSet:
- WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.NetworkRuleSet).IpRules);
+ WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.Data.NetworkRuleSet).IpRules);
break;
case ResourceAccessRuleStringParameterSet:
case ResourceAccessRuleObjectParameterSet:
- WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.NetworkRuleSet).ResourceAccessRules);
+ WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.Data.NetworkRuleSet).ResourceAccessRules);
break;
}
}
@@ -239,9 +225,9 @@ public override void ExecuteCmdlet()
/// The IpRule List
/// The IP Rule to remove
/// true if reove success
- public bool RemoveIpRule(IList ruleList, IPRule ruleToRemove)
+ public bool RemoveIpRule(IList ruleList, Track2Models.IPRule ruleToRemove)
{
- foreach (IPRule rule in ruleList)
+ foreach (Track2Models.IPRule rule in ruleList)
{
if (rule.IPAddressOrRange == ruleToRemove.IPAddressOrRange)
{
@@ -258,9 +244,9 @@ public bool RemoveIpRule(IList ruleList, IPRule ruleToRemove)
/// The ResourceAccessRule List
/// The ResourceAccessRule to remove
/// true if reove success
- public bool RemoveResourceAccessRule(IList ruleList, ResourceAccessRule ruleToRemove)
+ public bool RemoveResourceAccessRule(IList ruleList, Track2Models.ResourceAccessRule ruleToRemove)
{
- foreach (ResourceAccessRule rule in ruleList)
+ foreach (Track2Models.ResourceAccessRule rule in ruleList)
{
if (rule.TenantId.Equals(ruleToRemove.TenantId, System.StringComparison.InvariantCultureIgnoreCase)
&& rule.ResourceId.Equals(ruleToRemove.ResourceId, System.StringComparison.InvariantCultureIgnoreCase))
@@ -278,9 +264,9 @@ public bool RemoveResourceAccessRule(IList ruleList, Resourc
/// The NetworkRule List
/// The NetworkRulee to remove
/// true if reove success
- public bool RemoveNetworkRule(IList ruleList, VirtualNetworkRule ruleToRemove)
+ public bool RemoveNetworkRule(IList ruleList, Track2Models.VirtualNetworkRule ruleToRemove)
{
- foreach (VirtualNetworkRule rule in ruleList)
+ foreach (Track2Models.VirtualNetworkRule rule in ruleList)
{
if (rule.VirtualNetworkResourceId == ruleToRemove.VirtualNetworkResourceId)
{
diff --git a/src/Storage/Storage.Management/StorageAccount/UpdateAzureStorageAccountNetworkRuleSet.cs b/src/Storage/Storage.Management/StorageAccount/UpdateAzureStorageAccountNetworkRuleSet.cs
index e818602ecd87..8ca5c4cf14cb 100644
--- a/src/Storage/Storage.Management/StorageAccount/UpdateAzureStorageAccountNetworkRuleSet.cs
+++ b/src/Storage/Storage.Management/StorageAccount/UpdateAzureStorageAccountNetworkRuleSet.cs
@@ -12,16 +12,15 @@
// limitations under the License.
// ----------------------------------------------------------------------------------
-using System.Collections;
-using System.Management.Automation;
-using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
-using Microsoft.Azure.Management.Storage;
-using Microsoft.Azure.Management.Storage.Models;
-using StorageModels = Microsoft.Azure.Management.Storage.Models;
using Microsoft.Azure.Commands.Management.Storage.Models;
-using System.Collections.Generic;
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
+using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
using Microsoft.WindowsAzure.Commands.Common.CustomAttributes;
+using System.Collections;
+using System.Collections.Generic;
+using System.Management.Automation;
+using Track2 = Azure.ResourceManager.Storage;
+using Track2Models = Azure.ResourceManager.Storage.Models;
namespace Microsoft.Azure.Commands.Management.Storage
{
@@ -152,22 +151,20 @@ public override void ExecuteCmdlet()
{
throw new System.ArgumentNullException("IPRules, VirtualNetworkRules, Bypass, DefaultAction", "Request must specify an account NetworkRule property to update.");
}
-
- var storageAccount = this.StorageClient.StorageAccounts.GetProperties(
- this.ResourceGroupName,
- this.Name);
- NetworkRuleSet storageACL = storageAccount.NetworkRuleSet;
+ Track2.StorageAccountResource storageAccount = this.StorageClientTrack2
+ .GetStorageAccount(this.ResourceGroupName, this.Name).Get();
+ Track2Models.NetworkRuleSet storageACL = storageAccount.Data.NetworkRuleSet;
if (storageACL == null)
{
- storageACL = new NetworkRuleSet();
+ storageACL = new Track2Models.NetworkRuleSet(Track2Models.DefaultAction.Allow);
}
PSNetworkRuleSet psNetworkRule = PSNetworkRuleSet.ParsePSNetworkRule(storageACL);
if (isIpRuleSet)
{
- psNetworkRule.IpRules = IPRule;
+ psNetworkRule.IpRules = IPRule;
}
if (isNetworkRuleSet)
@@ -189,18 +186,30 @@ public override void ExecuteCmdlet()
{
psNetworkRule.DefaultAction = defaultAction.Value;
}
-
- StorageAccountUpdateParameters updateParameters = new StorageAccountUpdateParameters();
- updateParameters.NetworkRuleSet = PSNetworkRuleSet.ParseStorageNetworkRule(psNetworkRule);
- var updatedAccountResponse = this.StorageClient.StorageAccounts.Update(
- this.ResourceGroupName,
- this.Name,
- updateParameters);
+ Track2Models.StorageAccountPatch patch = new Track2Models.StorageAccountPatch();
+ patch.NetworkRuleSet = PSNetworkRuleSet.ParseStorageNetworkRule(psNetworkRule);
+
+ if (patch.NetworkRuleSet.IPRules.Count == 0)
+ {
+ patch.NetworkRuleSet.IPRules.Clear();
+ }
+ if (patch.NetworkRuleSet.VirtualNetworkRules.Count == 0)
+ {
+ patch.NetworkRuleSet.VirtualNetworkRules.Clear();
+ }
+ if (patch.NetworkRuleSet.ResourceAccessRules.Count == 0)
+ {
+ patch.NetworkRuleSet.ResourceAccessRules.Clear();
+ }
- storageAccount = this.StorageClient.StorageAccounts.GetProperties(this.ResourceGroupName, this.Name);
+ var updatedStorageAccount = this.StorageClientTrack2
+ .GetStorageAccount(this.ResourceGroupName, this.Name)
+ .Update(patch);
- WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.NetworkRuleSet));
+ storageAccount = this.StorageClientTrack2
+ .GetStorageAccount(this.ResourceGroupName, this.Name).Get();
+ WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.Data.NetworkRuleSet));
}
}
}