1
+ # ----------------------------------------------------------------------------------
2
+ #
3
+ # Copyright Microsoft Corporation
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ # Unless required by applicable law or agreed to in writing, software
9
+ # distributed under the License is distributed on an "AS IS" BASIS,
10
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ # See the License for the specific language governing permissions and
12
+ # limitations under the License.
13
+ # ----------------------------------------------------------------------------------
14
+
15
+ $clusterName = Get-ClusterName
16
+ $resourceGroupName = Get-ResourceGroupName
17
+ $appTypeName = Get-AppTypeName
18
+ $v1 = Get-AppTypeV1Name
19
+ $v2 = Get-AppTypeV2Name
20
+ $packageV1 = Get-AppPackageV1
21
+ $packageV2 = Get-AppPackageV2
22
+ $serviceTypeName = Get-ServiceTypeName
23
+
24
+ function Test-AppType
25
+ {
26
+ $appType = Get-AzServiceFabricApplicationType - ResourceGroupName $resourceGroupName - ClusterName $clusterName
27
+ Assert-Null $appType
28
+
29
+ $appType = New-AzServiceFabricApplicationType - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName - Verbose
30
+ Assert-AreEqual " Succeeded" $appType.ProvisioningState
31
+
32
+ $appTypeFromGet = Get-AzServiceFabricApplicationType - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName
33
+ Assert-NotNull $appTypeFromGet
34
+ Assert-AreEqual $appType.Id $appTypeFromGet.Id
35
+
36
+ $removeResponse = Remove-AzServiceFabricApplicationType - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName - Force - PassThru - Verbose
37
+ Assert-True { $removeResponse }
38
+
39
+ Assert-ThrowsContains { Get-AzServiceFabricApplicationType - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName } " NotFound"
40
+ }
41
+
42
+ function Test-AppTypeVersion
43
+ {
44
+ $appTypeVersion = Get-AzServiceFabricApplicationTypeVersion - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName
45
+ Assert-Null $appTypeVersion
46
+
47
+ $appTypeVersion = New-AzServiceFabricApplicationTypeVersion - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName - Version $v1 - PackageUrl $packageV1 - Verbose
48
+ Assert-AreEqual " Succeeded" $appTypeVersion.ProvisioningState
49
+
50
+ $appTypeVersionFromGet = Get-AzServiceFabricApplicationTypeVersion - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName - Version $v1
51
+ Assert-NotNull $appTypeVersionFromGet
52
+ Assert-AreEqual $appTypeVersion.Id $appTypeVersionFromGet.Id
53
+
54
+ $removeResponse = Remove-AzServiceFabricApplicationTypeVersion - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName - Version $v1 - Force - PassThru - Verbose
55
+ Assert-True { $removeResponse }
56
+
57
+ $removeResponse = Remove-AzServiceFabricApplicationType - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName - Force - PassThru - Verbose
58
+ Assert-True { $removeResponse }
59
+
60
+ Assert-ThrowsContains { Get-AzServiceFabricApplicationTypeVersion - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName - Version $v1 } " NotFound"
61
+ }
62
+
63
+ function Test-App
64
+ {
65
+ $appName = getAssetName " testApp"
66
+ $serviceName = getAssetName " testService"
67
+ $serviceName = " $ ( $appName ) ~$ ( $serviceName ) "
68
+
69
+ $app = Get-AzServiceFabricApplication - ResourceGroupName $resourceGroupName - ClusterName $clusterName
70
+ Assert-Null $app
71
+
72
+ $app = New-AzServiceFabricApplication - ResourceGroupName $resourceGroupName - ClusterName $clusterName - ApplicationTypeName $appTypeName - ApplicationTypeVersion $v1 - Name $appName - PackageUrl $packageV1 - Verbose
73
+ Assert-AreEqual " Succeeded" $app.ProvisioningState
74
+
75
+ $appFromGet = Get-AzServiceFabricApplication - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appName
76
+ Assert-NotNull $appFromGet
77
+ Assert-AreEqual $app.Id $appFromGet.Id
78
+
79
+ $service = New-AzServiceFabricService - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Stateless - InstanceCount -1 - ApplicationName $appName - Name $serviceName - Type $serviceTypeName - PartitionSchemeSingleton - Verbose
80
+ Assert-AreEqual " Succeeded" $service.ProvisioningState
81
+
82
+ $appTypeVersion = New-AzServiceFabricApplicationTypeVersion - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName - Version $v2 - PackageUrl $packageV2 - Verbose
83
+ Assert-AreEqual " Succeeded" $appTypeVersion.ProvisioningState
84
+
85
+ $app = Update-AzServiceFabricApplication - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appName - ApplicationTypeVersion $v2 `
86
+ - ApplicationParameter @ {Mode = " decimal" } - HealthCheckStableDurationSec 0 - HealthCheckWaitDurationSec 0 - HealthCheckRetryTimeoutSec 0 `
87
+ - UpgradeDomainTimeoutSec 5000 - UpgradeTimeoutSec 7000 - FailureAction Rollback - UpgradeReplicaSetCheckTimeoutSec 300 - ForceRestart - Verbose
88
+ Assert-AreEqual " Succeeded" $app.ProvisioningState
89
+ Assert-AreEqual $v2 $app.TypeVersion
90
+ Assert-AreEqual " decimal" $app.Parameters [" Mode" ]
91
+ Assert-True { $app.UpgradePolicy.ForceRestart }
92
+ Assert-AreEqual " 00:05:00" $app.UpgradePolicy.UpgradeReplicaSetCheckTimeout
93
+ Assert-AreEqual " 01:56:40" $app.UpgradePolicy.RollingUpgradeMonitoringPolicy.UpgradeTimeout
94
+ Assert-AreEqual " 01:23:20" $app.UpgradePolicy.RollingUpgradeMonitoringPolicy.UpgradeDomainTimeout
95
+ Assert-AreEqual " Rollback" $app.UpgradePolicy.RollingUpgradeMonitoringPolicy.FailureAction
96
+
97
+ $app = Update-AzServiceFabricApplication - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appName - MinimumNodeCount 1 - MaximumNodeCount 4 - Verbose
98
+ Assert-AreEqual 1 $app.MinimumNodes
99
+ Assert-AreEqual 4 $app.MaximumNodes
100
+
101
+ $removeResponse = Remove-AzServiceFabricApplication - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appName - Force - PassThru - Verbose
102
+ Assert-True { $removeResponse }
103
+
104
+ $removeResponse = Remove-AzServiceFabricApplicationType - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName - Force - PassThru - Verbose
105
+ Assert-True { $removeResponse }
106
+
107
+ Assert-ThrowsContains { Get-AzServiceFabricApplication - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appName } " NotFound"
108
+ }
109
+
110
+ function Test-Service
111
+ {
112
+ $appName = getAssetName " testApp"
113
+ $serviceName = getAssetName " testService"
114
+ $serviceName = " $ ( $appName ) ~$ ( $serviceName ) "
115
+
116
+ $app = New-AzServiceFabricApplication - ResourceGroupName $resourceGroupName - ClusterName $clusterName - ApplicationTypeName $appTypeName - ApplicationTypeVersion $v1 - Name $appName - PackageUrl $packageV1 - Verbose
117
+ Assert-AreEqual " Succeeded" $app.ProvisioningState
118
+
119
+ $service = Get-AzServiceFabricService - ResourceGroupName $resourceGroupName - ClusterName $clusterName - ApplicationName $appName
120
+ Assert-Null $service
121
+
122
+ $service = New-AzServiceFabricService - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Stateless - InstanceCount -1 - ApplicationName $appName - Name $serviceName - Type $serviceTypeName - PartitionSchemeSingleton - Verbose
123
+ Assert-AreEqual " Succeeded" $service.ProvisioningState
124
+
125
+ $serviceFromGet = Get-AzServiceFabricService - ResourceGroupName $resourceGroupName - ClusterName $clusterName - ApplicationName $appName - Name $serviceName
126
+ Assert-NotNull $serviceFromGet
127
+ Assert-AreEqual $service.Id $serviceFromGet.Id
128
+
129
+ $removeResponse = Remove-AzServiceFabricService - ResourceGroupName $resourceGroupName - ClusterName $clusterName - ApplicationName $appName - Name $serviceName - Force - PassThru - Verbose
130
+ Assert-True { $removeResponse }
131
+
132
+ $removeRespoetnse = Remove-AzServiceFabricApplication - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appName - Force - PassThru - Verbose
133
+ Assert-True { $removeResponse }
134
+
135
+ $removeResponse = Remove-AzServiceFabricApplicationType - ResourceGroupName $resourceGroupName - ClusterName $clusterName - Name $appTypeName - Force - PassThru - Verbose
136
+ Assert-True { $removeResponse }
137
+
138
+ Assert-ThrowsContains { Get-AzServiceFabricService - ResourceGroupName $resourceGroupName - ClusterName $clusterName - ApplicationName $appName - Name $serviceName } " NotFound"
139
+ }
0 commit comments