diff --git a/src/aks-preview/azext_aks_preview/custom.py b/src/aks-preview/azext_aks_preview/custom.py index 12b7d4ce54a..97cb2e756c7 100644 --- a/src/aks-preview/azext_aks_preview/custom.py +++ b/src/aks-preview/azext_aks_preview/custom.py @@ -1772,7 +1772,7 @@ def aks_agentpool_update(cmd, # pylint: disable=unused-argument update_autoscaler = enable_cluster_autoscaler + \ disable_cluster_autoscaler + update_cluster_autoscaler - if (update_autoscaler != 1 and not tags and not scale_down_mode and not mode and not max_surge and not labels): + if (update_autoscaler != 1 and not tags and not scale_down_mode and not mode and not max_surge and labels is None): raise CLIError('Please specify one or more of "--enable-cluster-autoscaler" or ' '"--disable-cluster-autoscaler" or ' '"--update-cluster-autoscaler" or ' diff --git a/src/aks-preview/azext_aks_preview/decorator.py b/src/aks-preview/azext_aks_preview/decorator.py index 726294e93f7..78f337de7fa 100644 --- a/src/aks-preview/azext_aks_preview/decorator.py +++ b/src/aks-preview/azext_aks_preview/decorator.py @@ -1949,7 +1949,8 @@ def check_raw_parameters(self): # some parameters support the use of empty string or dictionary to update/remove previously set values is_default = ( self.context.get_cluster_autoscaler_profile() is None and - self.context.get_api_server_authorized_ip_ranges() is None + self.context.get_api_server_authorized_ip_ranges() is None and + self.context.get_nodepool_labels() is None ) if not is_changed and is_default: diff --git a/src/aks-preview/azext_aks_preview/tests/latest/recordings/test_aks_nodepool_update_label_msi.yaml b/src/aks-preview/azext_aks_preview/tests/latest/recordings/test_aks_nodepool_update_label_msi.yaml index 4f9b9d0fc17..051f0fbda61 100644 --- a/src/aks-preview/azext_aks_preview/tests/latest/recordings/test_aks_nodepool_update_label_msi.yaml +++ b/src/aks-preview/azext_aks_preview/tests/latest/recordings/test_aks_nodepool_update_label_msi.yaml @@ -1070,7 +1070,7 @@ interactions: "maxPods": 110, "osType": "Linux", "osSKU": "Ubuntu", "enableAutoScaling": false, "type": "VirtualMachineScaleSets", "mode": "System", "orchestratorVersion": "1.21.7", "upgradeSettings": {}, "powerState": {"code": "Running"}, "enableNodePublicIP": - false, "nodeLabels": {"label1": "value2"}, "enableEncryptionAtHost": false, + false, "nodeLabels": {}, "enableEncryptionAtHost": false, "enableUltraSSD": false, "enableFIPS": false}}' headers: Accept: @@ -1102,7 +1102,7 @@ interactions: \ \"type\": \"VirtualMachineScaleSets\",\n \"enableAutoScaling\": false,\n \ \"provisioningState\": \"Updating\",\n \"powerState\": {\n \"code\": \"Running\"\n },\n \"orchestratorVersion\": \"1.21.7\",\n \"enableNodePublicIP\": - false,\n \"nodeLabels\": {\n \"label1\": \"value2\"\n },\n \"mode\": + false,\n \"nodeLabels\": {\n \n },\n \"mode\": \"System\",\n \"enableEncryptionAtHost\": false,\n \"enableUltraSSD\": false,\n \"osType\": \"Linux\",\n \"osSKU\": \"Ubuntu\",\n \"nodeImageVersion\": \"AKSUbuntu-1804gen2containerd-2021.12.07\",\n \"upgradeSettings\": {},\n @@ -1214,7 +1214,7 @@ interactions: \ \"type\": \"VirtualMachineScaleSets\",\n \"enableAutoScaling\": false,\n \ \"provisioningState\": \"Succeeded\",\n \"powerState\": {\n \"code\": \"Running\"\n },\n \"orchestratorVersion\": \"1.21.7\",\n \"enableNodePublicIP\": - false,\n \"nodeLabels\": {\n \"label1\": \"value2\"\n },\n \"mode\": + false,\n \"nodeLabels\": {\n \n },\n \"mode\": \"System\",\n \"enableEncryptionAtHost\": false,\n \"enableUltraSSD\": false,\n \"osType\": \"Linux\",\n \"osSKU\": \"Ubuntu\",\n \"nodeImageVersion\": \"AKSUbuntu-1804gen2containerd-2021.12.07\",\n \"upgradeSettings\": {},\n @@ -1273,7 +1273,7 @@ interactions: \ \"type\": \"VirtualMachineScaleSets\",\n \"enableAutoScaling\": false,\n \ \"provisioningState\": \"Succeeded\",\n \"powerState\": {\n \"code\": \"Running\"\n },\n \"orchestratorVersion\": \"1.21.7\",\n \"enableNodePublicIP\": - false,\n \"nodeLabels\": {\n \"label1\": \"value2\"\n },\n \"mode\": + false,\n \"nodeLabels\": {\n \n },\n \"mode\": \"System\",\n \"enableEncryptionAtHost\": false,\n \"enableUltraSSD\": false,\n \"osType\": \"Linux\",\n \"osSKU\": \"Ubuntu\",\n \"nodeImageVersion\": \"AKSUbuntu-1804gen2containerd-2021.12.07\",\n \"upgradeSettings\": {},\n diff --git a/src/aks-preview/azext_aks_preview/tests/latest/recordings/test_aks_update_label_msi.yaml b/src/aks-preview/azext_aks_preview/tests/latest/recordings/test_aks_update_label_msi.yaml index 4cebd118c35..1cef81b3529 100644 --- a/src/aks-preview/azext_aks_preview/tests/latest/recordings/test_aks_update_label_msi.yaml +++ b/src/aks-preview/azext_aks_preview/tests/latest/recordings/test_aks_update_label_msi.yaml @@ -1000,7 +1000,7 @@ interactions: "OCIContainer", "maxPods": 110, "osType": "Linux", "osSKU": "Ubuntu", "enableAutoScaling": false, "type": "VirtualMachineScaleSets", "mode": "System", "orchestratorVersion": "1.21.7", "powerState": {"code": "Running"}, "enableNodePublicIP": false, "nodeLabels": - {"label1": "value11"}, "enableEncryptionAtHost": false, "enableUltraSSD": false, + {}, "enableEncryptionAtHost": false, "enableUltraSSD": false, "enableFIPS": false, "name": "nodepool1"}], "linuxProfile": {"adminUsername": "azureuser", "ssh": {"publicKeys": [{"keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCYjiOAmfMwVuIAE31nCYs7f3ygC/sIwuNTchhXbeuMgnBngX9/ytGfyDPtJcHeAWGAWJqXDvlQ1zKcqvkEcEbrRioF6s6KrihUEbZp/QqspPRMkCLxl+11LcUkxDiErzX3oc9Wa9YiKEZIq4E2nOASLya8SVFWl3rQWaHsXe07JiH7AE9Gf6GaJsjn+coQ3yE12u6kpbduPWLSTdEiAeFKvM/jrUtLWVyxli0jvgZjU+y/VJuQJlhqZcHKeK0xG8JD8lgryv2Fu4esrxw2YqSJGySoE4Fm+BMe3wsydbf3cbzj7mI6WAMbA0aFS6atge+Cn4tuOWa3BYa2XIKOYXhl azcli_aks_live_test@example.com\n"}]}}, "servicePrincipalProfile": {"clientId":"00000000-0000-0000-0000-000000000001"}, @@ -1050,7 +1050,7 @@ interactions: \ \"enableAutoScaling\": false,\n \"provisioningState\": \"Updating\",\n \ \"powerState\": {\n \"code\": \"Running\"\n },\n \"orchestratorVersion\": \"1.21.7\",\n \"enableNodePublicIP\": false,\n \"nodeLabels\": {\n - \ \"label1\": \"value11\"\n },\n \"mode\": \"System\",\n \"enableEncryptionAtHost\": + \ \n },\n \"mode\": \"System\",\n \"enableEncryptionAtHost\": false,\n \"enableUltraSSD\": false,\n \"osType\": \"Linux\",\n \"osSKU\": \"Ubuntu\",\n \"nodeImageVersion\": \"AKSUbuntu-1804gen2containerd-2021.12.07\",\n \ \"enableFIPS\": false\n }\n ],\n \"linuxProfile\": {\n \"adminUsername\": @@ -1285,7 +1285,7 @@ interactions: \ \"enableAutoScaling\": false,\n \"provisioningState\": \"Succeeded\",\n \ \"powerState\": {\n \"code\": \"Running\"\n },\n \"orchestratorVersion\": \"1.21.7\",\n \"enableNodePublicIP\": false,\n \"nodeLabels\": {\n - \ \"label1\": \"value11\"\n },\n \"mode\": \"System\",\n \"enableEncryptionAtHost\": + \ \n },\n \"mode\": \"System\",\n \"enableEncryptionAtHost\": false,\n \"enableUltraSSD\": false,\n \"osType\": \"Linux\",\n \"osSKU\": \"Ubuntu\",\n \"nodeImageVersion\": \"AKSUbuntu-1804gen2containerd-2021.12.07\",\n \ \"enableFIPS\": false\n }\n ],\n \"linuxProfile\": {\n \"adminUsername\": diff --git a/src/aks-preview/azext_aks_preview/tests/latest/test_aks_commands.py b/src/aks-preview/azext_aks_preview/tests/latest/test_aks_commands.py index 47f53a0fa9c..a8e2b717fbd 100644 --- a/src/aks-preview/azext_aks_preview/tests/latest/test_aks_commands.py +++ b/src/aks-preview/azext_aks_preview/tests/latest/test_aks_commands.py @@ -3132,7 +3132,6 @@ def test_aks_nodepool_update_label_msi(self, resource_group, resource_group_loca aks_name = self.create_random_name('cliakstest', 16) nodepool1_name = "nodepool1" nodepool2_name = "nodepool2" - nodepool3_name = "nodepool3" tags = "key1=value1" new_tags = "key2=value2" labels = "label1=value1" @@ -3148,7 +3147,6 @@ def test_aks_nodepool_update_label_msi(self, resource_group, resource_group_loca 'labels': labels, 'nodepool1_name': nodepool1_name, 'nodepool2_name': nodepool2_name, - 'nodepool3_name': nodepool3_name }) # create @@ -3185,6 +3183,7 @@ def test_aks_nodepool_update_label_msi(self, resource_group, resource_group_loca os.close(fd) os.remove(temp_path) + # nodepool update nodepool1 label self.cmd('aks nodepool update --resource-group={resource_group} --cluster-name={name} --name={nodepool1_name} --labels {labels}', checks=[ self.check('provisioningState', 'Succeeded'), ]) @@ -3195,14 +3194,14 @@ def test_aks_nodepool_update_label_msi(self, resource_group, resource_group_loca self.check('[0].nodeLabels.label1', 'value1'), ]) - # nodepool update nodepool2 label - self.cmd('aks nodepool update --resource-group={resource_group} --cluster-name={name} --name={nodepool1_name} --labels label1=value2', checks=[ - self.check('nodeLabels.label1', 'value2') + # nodepool delete nodepool1 label + self.cmd('aks nodepool update --resource-group={resource_group} --cluster-name={name} --name={nodepool1_name} --labels ', checks=[ + self.check('nodeLabels.label1', None) ]) # nodepool show self.cmd('aks nodepool show --resource-group={resource_group} --cluster-name={name} --name={nodepool1_name}', checks=[ - self.check('nodeLabels.label1', 'value2') + self.check('nodeLabels.label1', None) ]) @@ -3250,10 +3249,10 @@ def test_aks_update_label_msi(self, resource_group, resource_group_location): ]) update_cmd = 'aks update --resource-group={resource_group} --name={name} ' \ - '--nodepool-labels label1=value11' + '--nodepool-labels ' self.cmd(update_cmd, checks=[ self.check('provisioningState', 'Succeeded'), - self.check('agentPoolProfiles[0].nodeLabels.label1', 'value11'), + self.check('agentPoolProfiles[0].nodeLabels.label1', None), self.check('agentPoolProfiles[0].nodeLabels.label2', None), ])