Skip to content
Merged
3 changes: 2 additions & 1 deletion src/aks-preview/HISTORY.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,10 @@ If there is no rush to release a new version, please just add a description of t

To release a new version, please select a new version number (usually plus 1 to last patch version, X.Y.Z -> Major.Minor.Patch, more details in `\doc <https://semver.org/>`_), and then add a new section named as the new version number in this file, the content should include the new modifications and everything from the *Pending* section. Finally, update the `VERSION` variable in `setup.py` with this new version number.

Pending
18.0.0b38
Comment thread
timmy-wright marked this conversation as resolved.
Outdated
+++++++
* Add machine command `az aks machine add` to add a machine to an existing machine pool.
* Add option `Windows2025` to `--os-sku` for `az aks nodepool add`.

18.0.0b37
+++++++
Expand Down
1 change: 1 addition & 0 deletions src/aks-preview/azext_aks_preview/_consts.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
CONST_OS_SKU_MARINER = "Mariner"
CONST_OS_SKU_WINDOWS2019 = "Windows2019"
CONST_OS_SKU_WINDOWS2022 = "Windows2022"
CONST_OS_SKU_WINDOWS2025 = "Windows2025"
CONST_OS_SKU_WINDOWSANNUAL = "WindowsAnnual"
CONST_OS_SKU_AZURELINUX = "AzureLinux"
CONST_OS_SKU_AZURELINUX3 = "AzureLinux3"
Expand Down
2 changes: 1 addition & 1 deletion src/aks-preview/azext_aks_preview/_help.py
Original file line number Diff line number Diff line change
Expand Up @@ -1922,7 +1922,7 @@
short-summary: The OS Type. Linux or Windows. Windows not supported yet for "VirtualMachines" VM set type.
- name: --os-sku
type: string
short-summary: The os-sku of the agent node pool. Ubuntu, Ubuntu2204, Ubuntu2404, CBLMariner, AzureLinux or AzureLinux3 when os-type is Linux, default is Ubuntu if not set; Windows2019, Windows2022 or WindowsAnnual when os-type is Windows, the current default is Windows2022 if not set.
short-summary: The os-sku of the agent node pool. Ubuntu, Ubuntu2204, Ubuntu2404, CBLMariner, AzureLinux or AzureLinux3 when os-type is Linux, default is Ubuntu if not set; Windows2019, Windows2022, Windows2025, or WindowsAnnual when os-type is Windows, the current default is Windows2022 if not set.
- name: --enable-fips-image
type: bool
short-summary: Use FIPS-enabled OS on agent nodes.
Expand Down
8 changes: 5 additions & 3 deletions src/aks-preview/azext_aks_preview/_params.py
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,7 @@
CONST_OS_SKU_UBUNTU2404,
CONST_OS_SKU_WINDOWS2019,
CONST_OS_SKU_WINDOWS2022,
CONST_OS_SKU_WINDOWS2025,
CONST_OS_SKU_WINDOWSANNUAL,
CONST_PATCH_UPGRADE_CHANNEL,
CONST_RAPID_UPGRADE_CHANNEL,
Expand Down Expand Up @@ -278,9 +279,10 @@
CONST_OS_SKU_UBUNTU2204,
CONST_OS_SKU_UBUNTU2404,
]
node_os_skus = node_os_skus_create + [
node_os_skus_add = node_os_skus_create + [
CONST_OS_SKU_WINDOWS2019,
CONST_OS_SKU_WINDOWS2022,
CONST_OS_SKU_WINDOWS2025,
CONST_OS_SKU_WINDOWSANNUAL,
]
node_os_skus_update = [
Expand Down Expand Up @@ -1643,7 +1645,7 @@ def load_arguments(self, _):
)
c.argument("os_type")
c.argument(
"os_sku", arg_type=get_enum_type(node_os_skus), validator=validate_os_sku
"os_sku", arg_type=get_enum_type(node_os_skus_add), validator=validate_os_sku
)
c.argument("snapshot_id", validator=validate_snapshot_id)
c.argument("vnet_subnet_id", validator=validate_vnet_subnet_id)
Expand Down Expand Up @@ -1970,7 +1972,7 @@ def load_arguments(self, _):
"machine_name", help="The machine name."
)
c.argument(
"os_sku", arg_type=get_enum_type(node_os_skus), validator=validate_os_sku
"os_sku", arg_type=get_enum_type(node_os_skus_add), validator=validate_os_sku
)
c.argument(
"zones",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2888,6 +2888,74 @@ def test_aks_nodepool_add_with_ossku_windows2022(
checks=[self.is_empty()],
)


@AllowLargeResponse()
@AKSCustomResourceGroupPreparer(
random_name_length=17, name_prefix="clitest", location="westus2"
)
def test_aks_nodepool_add_with_ossku_windows2025(
Comment thread
timmy-wright marked this conversation as resolved.
self, resource_group, resource_group_location
):
# reset the count so in replay mode the random names will start with 0
self.test_resources_count = 0
# kwargs for string formatting
aks_name = self.create_random_name("cliakstest", 16)
_, create_version = self._get_versions(resource_group_location)
self.kwargs.update(
{
"resource_group": resource_group,
"name": aks_name,
"dns_name_prefix": self.create_random_name("cliaksdns", 16),
"location": resource_group_location,
"resource_type": "Microsoft.ContainerService/ManagedClusters",
"windows_admin_username": "azureuser1",
"windows_admin_password": "replace-Password1234$",
"windows_nodepool_name": "npwin",
"k8s_version": create_version,
"ssh_key_value": self.generate_ssh_keys(),
}
)

# create
create_cmd = (
"aks create --resource-group={resource_group} --name={name} --location={location} "
"--dns-name-prefix={dns_name_prefix} --node-count=1 "
"--windows-admin-username={windows_admin_username} --windows-admin-password={windows_admin_password} "
"--load-balancer-sku=standard --vm-set-type=virtualmachinescalesets --network-plugin=azure "
"--ssh-key-value={ssh_key_value} --kubernetes-version={k8s_version}"
)
self.cmd(
create_cmd,
checks=[
self.exists("fqdn"),
self.exists("nodeResourceGroup"),
self.check("provisioningState", "Succeeded"),
self.check("windowsProfile.adminUsername", "azureuser1"),
],
)

# add Windows2025 nodepool
self.cmd(
"aks nodepool add "
"--resource-group={resource_group} "
"--cluster-name={name} "
"--name={windows_nodepool_name} "
"--node-count=1 "
"--os-type Windows "
"--os-sku Windows2025 "
"--aks-custom-headers AKSHTTPCustomFeatures=Microsoft.ContainerService/AKSWindows2025Preview",
checks=[
self.check("provisioningState", "Succeeded"),
self.check("osSku", "Windows2025"),
],
)

# delete
self.cmd(
"aks delete -g {resource_group} -n {name} --yes --no-wait",
checks=[self.is_empty()],
)

@AllowLargeResponse()
@AKSCustomResourceGroupPreparer(random_name_length=17, name_prefix='clitest', location='westus')
def test_aks_nodepool_add_with_ossku_ubuntu2204(self, resource_group, resource_group_location):
Expand Down
Loading