Skip to content

Commit 5ef71ae

Browse files
authored
Merge pull request #16 from yifanz0/yifan/track2.1
Migrate network rule related cmdlets to Track2 SDK
2 parents c3c3026 + bc9e400 commit 5ef71ae

File tree

6 files changed

+113
-138
lines changed

6 files changed

+113
-138
lines changed

src/Storage/Storage.Management/Models/PSNetworkRule.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
// limitations under the License.
1313
// ----------------------------------------------------------------------------------
1414

15-
using Microsoft.Azure.Management.Storage.Models;
1615
using System;
1716
using System.Collections.Generic;
1817
using Microsoft.WindowsAzure.Commands.Common.Attributes;

src/Storage/Storage.Management/Storage.Management.csproj

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,7 @@
1818
<Compile Remove="File\GetAzStorageFileServiceProperty.cs" />
1919
<Compile Remove="File\UpdateAzAzStorageFileServiceProperty.cs" />
2020
<Compile Remove="Models\PSFileServiceProperties.cs" />
21-
<Compile Remove="StorageAccount\AddAzureStorageAccountNetworkRule.cs" />
22-
<Compile Remove="StorageAccount\GetAzureStorageAccountNetworkRuleSet.cs" />
2321
<Compile Remove="StorageAccount\InvokeAzureStorageAccountHierarchicalNamespaceUpgrade.cs" />
24-
<Compile Remove="StorageAccount\RemoveAzureStorageAccountNetworkRule.cs" />
25-
<Compile Remove="StorageAccount\UpdateAzureStorageAccountNetworkRuleSet.cs" />
2622
<Compile Remove="StorageAccount\InvokeAzureStorageAccountFailover.cs" />
2723
</ItemGroup>
2824
<ItemGroup>

src/Storage/Storage.Management/StorageAccount/AddAzureStorageAccountNetworkRule.cs

Lines changed: 35 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,14 @@
1212
// limitations under the License.
1313
// ----------------------------------------------------------------------------------
1414

15-
using System.Collections;
16-
using System.Management.Automation;
17-
using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
18-
using Microsoft.Azure.Management.Storage;
19-
using Microsoft.Azure.Management.Storage.Models;
20-
using StorageModels = Microsoft.Azure.Management.Storage.Models;
2115
using Microsoft.Azure.Commands.Management.Storage.Models;
22-
using System.Collections.Generic;
2316
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
17+
using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
18+
using System.Collections;
19+
using System.Collections.Generic;
20+
using System.Management.Automation;
21+
using Track2 = Azure.ResourceManager.Storage;
22+
using Track2Models = Azure.ResourceManager.Storage.Models;
2423

2524
namespace Microsoft.Azure.Commands.Management.Storage
2625
{
@@ -132,26 +131,23 @@ public override void ExecuteCmdlet()
132131

133132
if (ShouldProcess(this.Name, "Add Storage Account NetworkRules"))
134133
{
135-
var storageAccount = this.StorageClient.StorageAccounts.GetProperties(
136-
this.ResourceGroupName,
137-
this.Name);
138-
NetworkRuleSet storageACL = storageAccount.NetworkRuleSet;
134+
Track2.StorageAccountResource storageAccount = this.StorageClientTrack2
135+
.GetStorageAccount(this.ResourceGroupName, this.Name).Get();
136+
Track2Models.NetworkRuleSet storageACL = storageAccount.Data.NetworkRuleSet;
139137

140138
if (storageACL == null)
141139
{
142-
storageACL = new NetworkRuleSet();
140+
storageACL = new Track2Models.NetworkRuleSet(Track2Models.DefaultAction.Allow);
143141
}
144142
bool ruleChanged = false;
145143

146144
switch (ParameterSetName)
147145
{
148146
case NetWorkRuleStringParameterSet:
149-
if (storageACL.VirtualNetworkRules == null)
150-
storageACL.VirtualNetworkRules = new List<VirtualNetworkRule>();
151147
foreach (string s in VirtualNetworkResourceId)
152148
{
153149
bool ruleExist = false;
154-
foreach (VirtualNetworkRule originRule in storageACL.VirtualNetworkRules)
150+
foreach (Track2Models.VirtualNetworkRule originRule in storageACL.VirtualNetworkRules)
155151
{
156152
if (originRule.VirtualNetworkResourceId.Equals(s, System.StringComparison.InvariantCultureIgnoreCase))
157153
{
@@ -162,19 +158,17 @@ public override void ExecuteCmdlet()
162158
}
163159
if (!ruleExist)
164160
{
165-
VirtualNetworkRule rule = new VirtualNetworkRule(s);
161+
Track2Models.VirtualNetworkRule rule = new Track2Models.VirtualNetworkRule(s);
166162
storageACL.VirtualNetworkRules.Add(rule);
167163
ruleChanged = true;
168164
}
169165
}
170166
break;
171167
case IpRuleStringParameterSet:
172-
if (storageACL.IpRules == null)
173-
storageACL.IpRules = new List<IPRule>();
174168
foreach (string s in IPAddressOrRange)
175169
{
176170
bool ruleExist = false;
177-
foreach (IPRule originRule in storageACL.IpRules)
171+
foreach (Track2Models.IPRule originRule in storageACL.IPRules)
178172
{
179173
if (originRule.IPAddressOrRange.Equals(s, System.StringComparison.InvariantCultureIgnoreCase))
180174
{
@@ -185,19 +179,15 @@ public override void ExecuteCmdlet()
185179
}
186180
if (!ruleExist)
187181
{
188-
IPRule rule = new IPRule(s);
189-
storageACL.IpRules.Add(rule);
182+
Track2Models.IPRule rule = new Track2Models.IPRule(s);
183+
storageACL.IPRules.Add(rule);
190184
ruleChanged = true;
191185
}
192186
}
193187
break;
194188
case ResourceAccessRuleStringParameterSet:
195-
if (storageACL.ResourceAccessRules == null)
196-
{
197-
storageACL.ResourceAccessRules = new List<ResourceAccessRule>();
198-
}
199189
bool ResourceAccessruleExist = false;
200-
foreach (ResourceAccessRule originRule in storageACL.ResourceAccessRules)
190+
foreach (Track2Models.ResourceAccessRule originRule in storageACL.ResourceAccessRules)
201191
{
202192
if (originRule.TenantId.Equals(this.TenantId, System.StringComparison.InvariantCultureIgnoreCase)
203193
&& originRule.ResourceId.Equals(this.ResourceId, System.StringComparison.InvariantCultureIgnoreCase))
@@ -209,18 +199,19 @@ public override void ExecuteCmdlet()
209199
}
210200
if (!ResourceAccessruleExist)
211201
{
212-
ResourceAccessRule rule = new ResourceAccessRule(this.TenantId, this.ResourceId);
202+
Track2Models.ResourceAccessRule rule = new Track2Models.ResourceAccessRule{
203+
TenantId = this.TenantId,
204+
ResourceId = this.ResourceId,
205+
};
213206
storageACL.ResourceAccessRules.Add(rule);
214207
ruleChanged = true;
215208
}
216209
break;
217210
case NetworkRuleObjectParameterSet:
218-
if (storageACL.VirtualNetworkRules == null)
219-
storageACL.VirtualNetworkRules = new List<VirtualNetworkRule>();
220211
foreach (PSVirtualNetworkRule rule in VirtualNetworkRule)
221212
{
222213
bool ruleExist = false;
223-
foreach (VirtualNetworkRule originRule in storageACL.VirtualNetworkRules)
214+
foreach (Track2Models.VirtualNetworkRule originRule in storageACL.VirtualNetworkRules)
224215
{
225216
if (originRule.VirtualNetworkResourceId.Equals(rule.VirtualNetworkResourceId, System.StringComparison.InvariantCultureIgnoreCase))
226217
{
@@ -237,14 +228,10 @@ public override void ExecuteCmdlet()
237228
}
238229
break;
239230
case ResourceAccessRuleObjectParameterSet:
240-
if (storageACL.ResourceAccessRules == null)
241-
{
242-
storageACL.ResourceAccessRules = new List<ResourceAccessRule>();
243-
}
244231
foreach (PSResourceAccessRule rule in ResourceAccessRule)
245232
{
246233
bool ruleExist = false;
247-
foreach (ResourceAccessRule originRule in storageACL.ResourceAccessRules)
234+
foreach (Track2Models.ResourceAccessRule originRule in storageACL.ResourceAccessRules)
248235
{
249236
if (originRule.TenantId.Equals(rule.TenantId, System.StringComparison.InvariantCultureIgnoreCase)
250237
&& originRule.ResourceId.Equals(rule.ResourceId, System.StringComparison.InvariantCultureIgnoreCase))
@@ -263,12 +250,10 @@ public override void ExecuteCmdlet()
263250
}
264251
break;
265252
case IpRuleObjectParameterSet:
266-
if (storageACL.IpRules == null)
267-
storageACL.IpRules = new List<IPRule>();
268253
foreach (PSIpRule rule in IPRule)
269254
{
270255
bool ruleExist = false;
271-
foreach (IPRule originRule in storageACL.IpRules)
256+
foreach (Track2Models.IPRule originRule in storageACL.IPRules)
272257
{
273258
if (originRule.IPAddressOrRange.Equals(rule.IPAddressOrRange, System.StringComparison.InvariantCultureIgnoreCase))
274259
{
@@ -279,8 +264,7 @@ public override void ExecuteCmdlet()
279264
}
280265
if (!ruleExist)
281266
{
282-
283-
storageACL.IpRules.Add(PSNetworkRuleSet.ParseStorageNetworkRuleIPRule(rule));
267+
storageACL.IPRules.Add(PSNetworkRuleSet.ParseStorageNetworkRuleIPRule(rule));
284268
ruleChanged = true;
285269
}
286270
}
@@ -289,30 +273,31 @@ public override void ExecuteCmdlet()
289273

290274
if (ruleChanged)
291275
{
292-
StorageAccountUpdateParameters updateParameters = new StorageAccountUpdateParameters();
293-
updateParameters.NetworkRuleSet = storageACL;
276+
Track2Models.StorageAccountPatch patch = new Track2Models.StorageAccountPatch();
277+
patch.NetworkRuleSet = storageACL;
294278

295-
var updatedAccountResponse = this.StorageClient.StorageAccounts.Update(
296-
this.ResourceGroupName,
297-
this.Name,
298-
updateParameters);
279+
Track2.StorageAccountResource updatedStorageAccount = this.StorageClientTrack2
280+
.GetStorageAccount(this.ResourceGroupName, this.Name)
281+
.Update(patch);
299282

300-
storageAccount = this.StorageClient.StorageAccounts.GetProperties(this.ResourceGroupName, this.Name);
283+
storageAccount = this.StorageClientTrack2
284+
.GetStorageAccount(this.ResourceGroupName, this.Name)
285+
.Get();
301286
}
302287

303288
switch (ParameterSetName)
304289
{
305290
case NetWorkRuleStringParameterSet:
306291
case NetworkRuleObjectParameterSet:
307-
WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.NetworkRuleSet).VirtualNetworkRules);
292+
WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.Data.NetworkRuleSet).VirtualNetworkRules);
308293
break;
309294
case IpRuleStringParameterSet:
310295
case IpRuleObjectParameterSet:
311-
WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.NetworkRuleSet).IpRules);
296+
WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.Data.NetworkRuleSet).IpRules);
312297
break;
313298
case ResourceAccessRuleStringParameterSet:
314299
case ResourceAccessRuleObjectParameterSet:
315-
WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.NetworkRuleSet).ResourceAccessRules);
300+
WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.Data.NetworkRuleSet).ResourceAccessRules);
316301
break;
317302
}
318303
}

src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountNetworkRuleSet.cs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,15 @@
1212
// limitations under the License.
1313
// ----------------------------------------------------------------------------------
1414

15+
using Microsoft.Azure.Commands.Management.Storage.Models;
16+
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
17+
using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
1518
using System.Collections;
19+
using System.Collections.Generic;
1620
using System.Management.Automation;
17-
using Microsoft.Azure.Commands.ResourceManager.Common.Tags;
18-
using Microsoft.Azure.Management.Storage;
19-
using Microsoft.Azure.Management.Storage.Models;
2021
using StorageModels = Microsoft.Azure.Management.Storage.Models;
21-
using Microsoft.Azure.Commands.Management.Storage.Models;
22-
using System.Collections.Generic;
23-
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
22+
using Track2 = Azure.ResourceManager.Storage;
23+
using Track2Models = Azure.ResourceManager.Storage.Models;
2424

2525
namespace Microsoft.Azure.Commands.Management.Storage
2626
{
@@ -49,12 +49,12 @@ public override void ExecuteCmdlet()
4949
{
5050
base.ExecuteCmdlet();
5151

52-
var storageAccount = this.StorageClient.StorageAccounts.GetProperties(
53-
this.ResourceGroupName,
54-
this.Name);
55-
if (storageAccount.NetworkRuleSet != null)
52+
Track2.StorageAccountResource account = this.StorageClientTrack2.GetStorageAccount(this.ResourceGroupName, this.Name)
53+
.Get();
54+
55+
if (account.Data.NetworkRuleSet != null)
5656
{
57-
WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(storageAccount.NetworkRuleSet));
57+
WriteObject(PSNetworkRuleSet.ParsePSNetworkRule(account.Data.NetworkRuleSet));
5858
}
5959
}
6060
}

0 commit comments

Comments
 (0)