@@ -42,48 +42,61 @@ function Test-VolumeCrud
42
42
43
43
$rule1 = @ {
44
44
RuleIndex = 1
45
- UnixReadOnly = ' false'
46
- UnixReadWrite = ' true'
47
- Cifs = ' false'
48
- Nfsv3 = ' true'
49
- Nfsv4 = ' false'
45
+ UnixReadOnly = $ false
46
+ UnixReadWrite = $ true
47
+ Cifs = $ false
48
+ Nfsv3 = $ true
49
+ Nfsv41 = $ false
50
50
AllowedClients = ' 0.0.0.0/0'
51
51
}
52
52
$rule2 = @ {
53
53
RuleIndex = 2
54
- UnixReadOnly = ' false'
55
- UnixReadWrite = ' true'
56
- Cifs = ' false'
57
- Nfsv3 = ' true '
58
- Nfsv4 = ' false '
54
+ UnixReadOnly = $ false
55
+ UnixReadWrite = $ true
56
+ Cifs = $ false
57
+ Nfsv3 = $false
58
+ Nfsv41 = $true
59
59
AllowedClients = ' 1.2.3.0/24'
60
60
}
61
61
$rule3 = @ {
62
62
RuleIndex = 2
63
- UnixReadOnly = ' false'
64
- UnixReadWrite = ' true'
65
- Cifs = ' false'
66
- Nfsv3 = ' true'
67
- Nfsv4 = ' false'
63
+ UnixReadOnly = $ false
64
+ UnixReadWrite = $ true
65
+ Cifs = $ false
66
+ Nfsv3 = $ true
67
+ Nfsv41 = $ false
68
68
AllowedClients = ' 2.3.4.0/24'
69
69
}
70
-
70
+ $rule5 = @ {
71
+ RuleIndex = 1
72
+ UnixReadOnly = $false
73
+ UnixReadWrite = $true
74
+ Cifs = $false
75
+ Nfsv3 = $false
76
+ Nfsv41 = $true
77
+ AllowedClients = ' 1.2.3.0/24'
78
+ }
71
79
$exportPolicy = @ {
72
80
Rules = (
73
81
$rule1 , $rule2
74
82
)
75
83
}
76
84
85
+ $exportPolicyv4 = @ {
86
+ Rules = (
87
+ $rule5
88
+ )
89
+ }
90
+
77
91
$exportPolicyMod = @ {
78
92
Rules = (
79
93
$rule3
80
94
)
81
95
}
82
96
83
97
# create the list of protocol types
84
- $protocolTypes = New-Object string[] 2
98
+ $protocolTypes = New-Object string[] 1
85
99
$protocolTypes [0 ] = " NFSv3"
86
- $protocolTypes [1 ] = " NFSv4.1"
87
100
88
101
try
89
102
{
@@ -112,16 +125,18 @@ function Test-VolumeCrud
112
125
Assert-NotNull $retrievedVolume.ExportPolicy
113
126
Assert-AreEqual $retrievedVolume.ExportPolicy.Rules [0 ].AllowedClients ' 0.0.0.0/0'
114
127
Assert-AreEqual $retrievedVolume.ExportPolicy.Rules [1 ].AllowedClients ' 1.2.3.0/24'
115
- Assert-AreEqual $retrievedVolume.ProtocolTypes [0 ] $protocolTypes [0 ]
116
- Assert-AreEqual $retrievedVolume.ProtocolTypes [1 ] $protocolTypes [1 ]
128
+ Assert-AreEqual $retrievedVolume.ProtocolTypes [0 ] ' NFSv3'
117
129
Assert-NotNull $retrievedVolume.MountTargets
118
130
131
+ # use the NFSv4.1
132
+ $protocolTypesv4 = New-Object string[] 1
133
+ $protocolTypesv4 [0 ] = " NFSv4.1"
134
+
119
135
# create second volume and check using the confirm flag
120
- $retrievedVolume = New-AzNetAppFilesVolume - ResourceGroupName $resourceGroup - Location $resourceLocation - AccountName $accName - PoolName $poolName - VolumeName $volName2 - CreationToken $volName2 - UsageThreshold $usageThreshold - ServiceLevel $serviceLevel - SubnetId $subnetId - Confirm:$false
136
+ $retrievedVolume = New-AzNetAppFilesVolume - ResourceGroupName $resourceGroup - Location $resourceLocation - AccountName $accName - PoolName $poolName - VolumeName $volName2 - CreationToken $volName2 - UsageThreshold $usageThreshold - ServiceLevel $serviceLevel - SubnetId $subnetId - ExportPolicy $exportPolicyv4 - ProtocolType $protocolTypesv4 - Confirm:$false
121
137
Assert-AreEqual " $accName /$poolName /$volName2 " $retrievedVolume.Name
122
138
Assert-AreEqual $serviceLevel $retrievedVolume.ServiceLevel
123
- # default protocol type for new volume
124
- Assert-AreEqual $retrievedVolume.ProtocolTypes [0 ] ' NFSv3'
139
+ Assert-AreEqual $retrievedVolume.ProtocolTypes [0 ] ' NFSv4.1'
125
140
126
141
# create and check a third volume using the WhatIf - it should not be created
127
142
$retrievedVolume = New-AzNetAppFilesVolume - ResourceGroupName $resourceGroup - Location $resourceLocation - AccountName $accName - PoolName $poolName - VolumeName $volName3 - CreationToken $volName2 - UsageThreshold $usageThreshold - ServiceLevel $serviceLevel - SubnetId $subnetId - WhatIf
@@ -153,11 +168,11 @@ function Test-VolumeCrud
153
168
154
169
$rule4 = @ {
155
170
RuleIndex = 3
156
- UnixReadOnly = ' false'
157
- UnixReadWrite = ' true'
158
- Cifs = ' false'
159
- Nfsv3 = ' true'
160
- Nfsv4 = ' false'
171
+ UnixReadOnly = $ false
172
+ UnixReadWrite = $ true
173
+ Cifs = $ false
174
+ Nfsv3 = $ true
175
+ Nfsv41 = $ false
161
176
AllowedClients = ' 1.2.3.0/24'
162
177
}
163
178
@@ -190,14 +205,16 @@ function Test-VolumeCrud
190
205
# create the volume and check
191
206
$newTagName = " tag1"
192
207
$newTagValue = " tagValue1"
193
- $retrievedVolume = New-AzNetAppFilesVolume - ResourceGroupName $resourceGroup - Location $resourceLocation - AccountName $accName - PoolName $poolName2 - VolumeName $volName4 - CreationToken $volName4 - UsageThreshold $doubleUsage - ServiceLevel " Standard" - SubnetId $subnetId - Tag @ {$newTagName = $newTagValue } - ExportPolicy $exportPolicy - ProtocolType $protocolTypes
208
+ $retrievedVolume = New-AzNetAppFilesVolume - ResourceGroupName $resourceGroup - Location $resourceLocation - AccountName $accName - PoolName $poolName2 - VolumeName $volName4 - CreationToken $volName4 - UsageThreshold $doubleUsage - ServiceLevel " Standard" - SubnetId $subnetId - Tag @ {$newTagName = $newTagValue } - ExportPolicy $exportPolicy
194
209
Assert-AreEqual " $accName /$poolName2 /$volName4 " $retrievedVolume.Name
195
210
Assert-AreEqual " Standard" $retrievedVolume.ServiceLevel
196
211
Assert-AreEqual True $retrievedVolume.Tags.ContainsKey ($newTagName )
197
212
Assert-AreEqual " tagValue1" $retrievedVolume.Tags [$newTagName ].ToString()
198
213
Assert-NotNull $retrievedVolume.ExportPolicy
199
214
Assert-AreEqual ' 0.0.0.0/0' $retrievedVolume.ExportPolicy.Rules [0 ].AllowedClients
200
215
Assert-AreEqual ' 1.2.3.0/24' $retrievedVolume.ExportPolicy.Rules [1 ].AllowedClients
216
+ # default protocol type for new volume
217
+ Assert-AreEqual $retrievedVolume.ProtocolTypes [0 ] ' NFSv3'
201
218
202
219
# update (patch) export policy and check no change to rest of volume
203
220
$retrievedVolume = Update-AzNetAppFilesVolume - ResourceGroupName $resourceGroup - Location $resourceLocation - AccountName $accName - PoolName $poolName2 - VolumeName $volName4 - ExportPolicy $exportPolicyMod
@@ -298,4 +315,4 @@ function Test-VolumePipelines
298
315
# Cleanup
299
316
Clean - ResourceGroup $resourceGroup
300
317
}
301
- }
318
+ }
0 commit comments