Skip to content

Commit c3780dc

Browse files
authored
[AKS] Promised breaking changes (#13252)
* Do breaking changes * Update the default value of parameters in help documents. Co-authored-by: wyunchi-ms <[email protected]>
1 parent 769fbbb commit c3780dc

File tree

12 files changed

+47
-71
lines changed

12 files changed

+47
-71
lines changed

src/Aks/Aks.Test/ScenarioTests/KubernetesTests.ps1

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -16,19 +16,19 @@ function Test-NewAzAksSimple
1616

1717
if (IsLive) {
1818
$cred = $(createTestCredential "Unicorns" "Puppies")
19-
New-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NodeVmSize $nodeVmSize -ClientIdAndSecret $cred
19+
New-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NodeVmSize $nodeVmSize -ClientIdAndSecret $cred
2020
} else {
21-
New-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NodeVmSize $nodeVmSize
21+
New-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NodeVmSize $nodeVmSize
2222
}
23-
$cluster = Get-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName
23+
$cluster = Get-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName
2424
Assert-NotNull $cluster.Fqdn
2525
Assert-NotNull $cluster.DnsPrefix
2626
Assert-AreEqual 1 $cluster.AgentPoolProfiles.Length
2727
Assert-AreEqual 3 $cluster.AgentPoolProfiles[0].Count;
28-
$cluster = $cluster | Set-AzAks -NodeCount 2
28+
$cluster = $cluster | Set-AzAksCluster -NodeCount 2
2929
Assert-AreEqual 2 $cluster.AgentPoolProfiles[0].Count;
3030
$cluster | Import-AzAksCredential -Force
31-
$cluster | Remove-AzAks -Force
31+
$cluster | Remove-AzAksCluster -Force
3232
}
3333
finally
3434
{
@@ -53,19 +53,19 @@ function Test-NewAzAksWithAcr
5353

5454
if (IsLive) {
5555
$cred = $(createTestCredential "Unicorns" "Puppies")
56-
New-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NodeVmSize $nodeVmSize -ClientIdAndSecret $cred -AcrNameToAttach $acrName
56+
New-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NodeVmSize $nodeVmSize -ClientIdAndSecret $cred -AcrNameToAttach $acrName
5757
} else {
58-
New-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NodeVmSize $nodeVmSize -AcrNameToAttach $acrName
58+
New-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NodeVmSize $nodeVmSize -AcrNameToAttach $acrName
5959
}
60-
$cluster = Get-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName
60+
$cluster = Get-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName
6161
Assert-NotNull $cluster.Fqdn
6262
Assert-NotNull $cluster.DnsPrefix
6363
Assert-AreEqual 1 $cluster.AgentPoolProfiles.Length
6464
Assert-AreEqual 3 $cluster.AgentPoolProfiles[0].Count;
6565
$cluster = $cluster | Set-AzAks -NodeCount 2
6666
Assert-AreEqual 2 $cluster.AgentPoolProfiles[0].Count;
6767
$cluster | Import-AzAksCredential -Force
68-
$cluster | Remove-AzAks -Force
68+
$cluster | Remove-AzAksCluster -Force
6969
}
7070
finally
7171
{
@@ -103,17 +103,17 @@ function Test-NewAzAks
103103

104104
if (IsLive) {
105105
$cred = $(createTestCredential "Unicorns" "Puppies")
106-
New-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NetworkPlugin $networkPlugin `
106+
New-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NetworkPlugin $networkPlugin `
107107
-KubernetesVersion $kubeVersion -EnableRbac -LoadBalancerSku $loadBalancerSku -LinuxProfileAdminUserName $linuxAdminUser -DnsNamePrefix $dnsNamePrefix `
108-
-NodeName $nodeName -NodeOsType $nodeOsType -EnableNodeAutoScaling -NodeCount $nodeCount -NodeOsDiskSize $nodeDiskSize -NodeVmSize $nodeVmSize `
108+
-NodeName $nodeName -EnableNodeAutoScaling -NodeCount $nodeCount -NodeOsDiskSize $nodeDiskSize -NodeVmSize $nodeVmSize `
109109
-NodeMaxCount $nodeMaxCount -NodeMinCount $nodeMinCount -NodeMaxPodCount $maxPodCount -NodeSetPriority Regular -NodeScaleSetEvictionPolicy Deallocate -NodeVmSetType VirtualMachineScaleSets
110110
} else {
111-
New-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NetworkPlugin $networkPlugin `
111+
New-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NetworkPlugin $networkPlugin `
112112
-KubernetesVersion $kubeVersion -EnableRbac -LoadBalancerSku $loadBalancerSku -LinuxProfileAdminUserName $linuxAdminUser -DnsNamePrefix $dnsNamePrefix `
113-
-NodeName $nodeName -NodeOsType $nodeOsType -EnableNodeAutoScaling -NodeCount $nodeCount -NodeOsDiskSize $nodeDiskSize -NodeVmSize $nodeVmSize `
113+
-NodeName $nodeName -EnableNodeAutoScaling -NodeCount $nodeCount -NodeOsDiskSize $nodeDiskSize -NodeVmSize $nodeVmSize `
114114
-NodeMaxCount $nodeMaxCount -NodeMinCount $nodeMinCount -NodeMaxPodCount $maxPodCount -NodeSetPriority Regular -NodeScaleSetEvictionPolicy Deallocate -NodeVmSetType VirtualMachineScaleSets
115115
}
116-
$cluster = Get-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName
116+
$cluster = Get-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName
117117
Assert-NotNull $cluster.Fqdn
118118
Assert-AreEqual $dnsNamePrefix $cluster.DnsPrefix
119119
Assert-AreEqual $kubeVersion $cluster.KubernetesVersion
@@ -133,12 +133,12 @@ function Test-NewAzAks
133133
Assert-AreEqual $enableAutoScaling $cluster.AgentPoolProfiles[0].EnableAutoScaling
134134

135135
Assert-AreEqual 1 $cluster.AgentPoolProfiles.Length
136-
$cluster = $cluster | Set-AzAks -NodeName $nodeName -NodeMinCount 2 -NodeMaxCount 28 -KubernetesVersion $updatedKubeVersion
136+
$cluster = $cluster | Set-AzAksCluster -NodeName $nodeName -NodeMinCount 2 -NodeMaxCount 28 -KubernetesVersion $updatedKubeVersion
137137
Assert-AreEqual 2 $cluster.AgentPoolProfiles[0].MinCount
138138
Assert-AreEqual 28 $cluster.AgentPoolProfiles[0].MaxCount;
139139
Assert-AreEqual $updatedKubeVersion $cluster.KubernetesVersion
140140
$cluster | Import-AzAksCredential -Force
141-
$cluster | Remove-AzAks -Force
141+
$cluster | Remove-AzAksCluster -Force
142142
}
143143
finally
144144
{
@@ -157,16 +157,16 @@ function Test-NewAzAksAddons
157157
{
158158
New-AzResourceGroup -Name $resourceGroupName -Location $location
159159

160-
New-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName -AddOnNameToBeEnabled KubeDashboard,HttpApplicationRouting
161-
$cluster = Get-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName
160+
New-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName -AddOnNameToBeEnabled KubeDashboard,HttpApplicationRouting
161+
$cluster = Get-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName
162162
Assert-AreEqual $true $cluster.AddonProfiles['httpapplicationrouting'].Enabled
163163
Assert-AreEqual $true $cluster.AddonProfiles['httpapplicationrouting'].Enabled
164164

165165
$cluster = $cluster | Disable-AzAksAddon -Name HttpApplicationRouting
166166
Assert-AreEqual $false $cluster.AddonProfiles['httpapplicationrouting'].Enabled
167167
$cluster = $cluster | Enable-AzAksAddon -Name HttpApplicationRouting
168168
Assert-AreEqual $true $cluster.AddonProfiles['httpapplicationrouting'].Enabled
169-
$cluster | Remove-AzAks -Force
169+
$cluster | Remove-AzAksCluster -Force
170170
}
171171
finally
172172
{

src/Aks/Aks.Test/ScenarioTests/NodePoolTests.ps1

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,14 @@ function Test-NewNodePool
2525
#new cluster
2626
if (IsLive) {
2727
$cred = $(createTestCredential "Unicorns" "Puppies")
28-
New-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName -ClientIdAndSecret $cred -NetworkPlugin $networkPlugin `
28+
New-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName -ClientIdAndSecret $cred -NetworkPlugin $networkPlugin `
2929
-KubernetesVersion $kubeVersion -NodeVmSetType $nodeVmSetType -WindowsProfileAdminUserName $winAdminUser `
3030
-WindowsProfileAdminUserPassword $winPassword
3131
} else {
32-
New-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NetworkPlugin $networkPlugin -KubernetesVersion $kubeVersion
32+
New-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName -NetworkPlugin $networkPlugin -KubernetesVersion $kubeVersion
3333
}
3434

35-
$cluster = Get-AzAks -ResourceGroupName $resourceGroupName -Name $kubeClusterName
35+
$cluster = Get-AzAksCluster -ResourceGroupName $resourceGroupName -Name $kubeClusterName
3636
Assert-AreEqual $networkPlugin $cluster.NetworkProfile.NetworkPlugin
3737
Assert-AreEqual $nodeOsType $cluster.AgentPoolProfiles[0].OsType
3838
Assert-AreEqual 1 $cluster.AgentPoolProfiles.Count
@@ -53,7 +53,7 @@ function Test-NewNodePool
5353
Assert-AreEqual $kubeVersion $updatedWinPool.OrchestratorVersion
5454

5555
$updatedWinPool | Remove-AzAksNodePool -Force
56-
$cluster | Remove-AzAks -Force
56+
$cluster | Remove-AzAksCluster -Force
5757
}
5858
finally
5959
{

src/Aks/Aks/ChangeLog.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,12 @@
1818
- Additional information about change #1
1919
-->
2020
## Upcoming Release
21+
* [Breaking Change] Removed cmdlet alias `Get-AzAks`, `New-AzAks`, `Remove-AzAks` and `Set-AzAks`.
22+
* [Breaking Change] Removed parameter alias `ClientIdAndSecret` in `New-AzAksCluster` and `Set-AzAksCluster`.
23+
* [Breaking Change] Changed the default value of `NodeVmSetType` in `New-AzAksCluster` from `AvailabilitySet` to `VirtualMachineScaleSets`.
24+
* [Breaking Change] Changed the default value of `NetworkPlugin` in `New-AzAksCluster` from `None` to `azure`.
25+
* [Breaking Change] Removed parameter `NodeOsType` in `New-AzAksCluster` as it supports only one value Linux.
26+
2127

2228
## Version 1.3.0
2329
* Added client side parameter validation logic for `New-AzAksCluster`, `Set-AzAksCluster` and `New-AzAksNodePool`. [#12372]

src/Aks/Aks/Commands/CreateOrUpdateKubeBase.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,6 @@ public abstract class CreateOrUpdateKubeBase : KubeCmdletBase
7070
Mandatory = false,
7171
ParameterSetName = DefaultParamSet,
7272
HelpMessage = "The client id and client secret associated with the AAD application / service principal.")]
73-
[Alias("ClientIdAndSecret")]
74-
[CmdletParameterBreakingChange("ClientIdAndSecret", ReplaceMentCmdletParameterName = "ServicePrincipalIdAndSecret")]
7573
public PSCredential ServicePrincipalIdAndSecret { get; set; }
7674

7775
[Parameter(Mandatory = false,

src/Aks/Aks/Commands/GetAzureRmAks.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,7 @@
2525

2626
namespace Microsoft.Azure.Commands.Aks
2727
{
28-
[CmdletDeprecation(ReplacementCmdletName = "Get-AzAksCluster")]
2928
[Cmdlet("Get", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "AksCluster", DefaultParameterSetName = ResourceGroupParameterSet)]
30-
[Alias("Get-" + ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "Aks")]
3129
[OutputType(typeof(PSKubernetesCluster))]
3230
public class GetAzureRmAks : KubeCmdletBase
3331
{

src/Aks/Aks/Commands/NewAzureRmAks.cs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,7 @@
2626

2727
namespace Microsoft.Azure.Commands.Aks
2828
{
29-
[CmdletDeprecation(ReplacementCmdletName = "New-AzAksCluster")]
3029
[Cmdlet("New", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "AksCluster", DefaultParameterSetName = DefaultParamSet, SupportsShouldProcess = true)]
31-
[Alias("New-" + ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "Aks")]
3230
[OutputType(typeof(PSKubernetesCluster))]
3331
public class NewAzureRmAks : NewKubeBase
3432
{
@@ -101,11 +99,6 @@ private void PreValidate()
10199
throw new ArgumentException(Resources.NetworkPluginShouldBeAzure);
102100
}
103101
}
104-
if (string.Equals(this.NodeOsType, "Windows"))
105-
{
106-
if (NodeName?.Length > 6)
107-
throw new PSInvalidOperationException(Resources.WindowsNodePoolNameLengthLimitation);
108-
}
109102
}
110103

111104
private void VerifySshKeyGenBinaryExist()

src/Aks/Aks/Commands/NewKubeBase.cs

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ namespace Microsoft.Azure.Commands.Aks
3131
{
3232
public abstract class NewKubeBase : CreateOrUpdateKubeBase
3333
{
34-
[CmdletParameterBreakingChange("NodeVmSetType", ChangeDescription = "Default value will be changed from AvailabilitySet to VirtualMachineScaleSets.")]
3534
[Parameter(Mandatory = false, HelpMessage = "Represents types of an node pool. Possible values include: 'VirtualMachineScaleSets', 'AvailabilitySet'")]
3635
[PSArgumentCompleter("AvailabilitySet", "VirtualMachineScaleSets")]
3736
public string NodeVmSetType { get; set; }
@@ -42,11 +41,6 @@ public abstract class NewKubeBase : CreateOrUpdateKubeBase
4241
[Parameter(Mandatory = false, HelpMessage = "Maximum number of pods that can run on node.")]
4342
public int NodeMaxPodCount { get; set; }
4443

45-
[CmdletParameterBreakingChange("NodeOsType", ChangeDescription = "NodeOsType will be removed as it supports only one value Linux.")]
46-
[Parameter(Mandatory = false, HelpMessage = "OsType to be used to specify os type, currently support 'Linux' only here.")]
47-
[PSArgumentCompleter("Linux")]
48-
public string NodeOsType { get; set; }
49-
5044
////Hide it as it expects GA by around May
5145
//[Parameter(Mandatory = false, HelpMessage = "Whether to enable public IP for nodes")]
5246
//public SwitchParameter EnableNodePublicIp { get; set; }
@@ -120,10 +114,9 @@ public abstract class NewKubeBase : CreateOrUpdateKubeBase
120114
[ValidateSecureString(RegularExpression = "^(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%\\^&\\*\\(\\)])[a-zA-Z\\d!@#$%\\^&\\*\\(\\)]{12,123}$")]
121115
public SecureString WindowsProfileAdminUserPassword { get; set; }
122116

123-
[CmdletParameterBreakingChange("NetworkPlugin", ChangeDescription = "Default value will be changed from None to azure.")]
124117
[Parameter(Mandatory = false, HelpMessage = "Network plugin used for building Kubernetes network.")]
125118
[PSArgumentCompleter("azure", "kubenet")]
126-
public string NetworkPlugin { get; set; }
119+
public string NetworkPlugin { get; set; } = "azure";
127120

128121
[Parameter(Mandatory = false, HelpMessage = "The load balancer sku for the managed cluster.")]
129122
[PSArgumentCompleter("basic", "standard")]
@@ -217,12 +210,9 @@ private ManagedClusterAgentPoolProfile GetAgentPoolProfile()
217210
count: NodeCount,
218211
vmSize: NodeVmSize,
219212
osDiskSizeGB: NodeOsDiskSize,
220-
type: NodeVmSetType ?? "AvailabilitySet",
213+
type: NodeVmSetType ?? "VirtualMachineScaleSets",
221214
vnetSubnetID: NodeVnetSubnetID);
222-
if (this.IsParameterBound(c => c.NodeOsType))
223-
{
224-
defaultAgentPoolProfile.OsType = NodeOsType;
225-
}
215+
defaultAgentPoolProfile.OsType = "Linux";
226216
if (this.IsParameterBound(c => c.NodeMaxPodCount))
227217
{
228218
defaultAgentPoolProfile.MaxPods = NodeMaxPodCount;

src/Aks/Aks/Commands/RemoveAzureRmAks.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,7 @@
2222

2323
namespace Microsoft.Azure.Commands.Aks
2424
{
25-
[CmdletDeprecation(ReplacementCmdletName = "Remove-AzAksCluster")]
2625
[Cmdlet("Remove", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "AksCluster", SupportsShouldProcess = true, DefaultParameterSetName = GroupNameParameterSet)]
27-
[Alias("Remove-" + ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "Aks")]
2826
[OutputType(typeof(bool))]
2927
public class RemoveAzureRmAks : KubeCmdletBase
3028
{

src/Aks/Aks/Commands/SetAzureRmAks.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,7 @@
2727

2828
namespace Microsoft.Azure.Commands.Aks
2929
{
30-
[CmdletDeprecation(ReplacementCmdletName = "Set-AzAksCluster")]
3130
[Cmdlet("Set", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "AksCluster", DefaultParameterSetName = DefaultParamSet, SupportsShouldProcess = true)]
32-
[Alias("Set-" + ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "Aks")]
3331
[OutputType(typeof(PSKubernetesCluster))]
3432
public class SetAzureRmAks : CreateOrUpdateKubeBase
3533
{

src/Aks/Aks/help/New-AzAksCluster.md

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Create a new managed Kubernetes cluster.
1414

1515
```
1616
New-AzAksCluster [-Force] [-GenerateSshKey] [-NodeVmSetType <String>] [-NodeVnetSubnetID <String>]
17-
[-NodeMaxPodCount <Int32>] [-NodeOsType <String>] [-NodeSetPriority <String>] [-NodePoolMode <String>]
17+
[-NodeMaxPodCount <Int32>] [-NodeSetPriority <String>] [-NodePoolMode <String>]
1818
[-NodeScaleSetEvictionPolicy <String>] [-AddOnNameToBeEnabled <String[]>] [-WorkspaceResourceId <String>]
1919
[-SubnetName <String>] [-AcrNameToAttach <String>] [-EnableRbac] [-WindowsProfileAdminUserName <String>]
2020
[-WindowsProfileAdminUserPassword <SecureString>] [-NetworkPlugin <String>] [-LoadBalancerSku <String>]
@@ -271,7 +271,7 @@ Aliases:
271271

272272
Required: False
273273
Position: Named
274-
Default value: None
274+
Default value: azure
275275
Accept pipeline input: False
276276
Accept wildcard characters: False
277277
```
@@ -366,21 +366,6 @@ Accept pipeline input: False
366366
Accept wildcard characters: False
367367
```
368368
369-
### -NodeOsType
370-
OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux.
371-
372-
```yaml
373-
Type: System.String
374-
Parameter Sets: (All)
375-
Aliases:
376-
377-
Required: False
378-
Position: Named
379-
Default value: None
380-
Accept pipeline input: False
381-
Accept wildcard characters: False
382-
```
383-
384369
### -NodePoolMode
385370
NodePoolMode represents mode of an node pool.
386371
@@ -436,7 +421,7 @@ Aliases:
436421

437422
Required: False
438423
Position: Named
439-
Default value: None
424+
Default value: VirtualMachineScaleSets
440425
Accept pipeline input: False
441426
Accept wildcard characters: False
442427
```
@@ -492,7 +477,7 @@ The client id and client secret associated with the AAD application / service pr
492477
```yaml
493478
Type: System.Management.Automation.PSCredential
494479
Parameter Sets: (All)
495-
Aliases: ClientIdAndSecret
480+
Aliases:
496481

497482
Required: False
498483
Position: 2

src/Aks/Aks/help/Set-AzAksCluster.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -331,7 +331,7 @@ The client id and client secret associated with the AAD application / service pr
331331
```yaml
332332
Type: System.Management.Automation.PSCredential
333333
Parameter Sets: defaultParameterSet
334-
Aliases: ClientIdAndSecret
334+
Aliases:
335335

336336
Required: False
337337
Position: 2

0 commit comments

Comments
 (0)