Skip to content

Add --enable-os-disk-full-caching for create/nodepool add#9841

Open
weiliu2dev wants to merge 1 commit intoAzure:mainfrom
weiliu2dev:weiliu2/osdisk_fullcache
Open

Add --enable-os-disk-full-caching for create/nodepool add#9841
weiliu2dev wants to merge 1 commit intoAzure:mainfrom
weiliu2dev:weiliu2/osdisk_fullcache

Conversation

@weiliu2dev
Copy link
Copy Markdown


This checklist is used to make sure that common guidelines for a pull request are followed.

Related command

General Guidelines

  • Have you run azdev style <YOUR_EXT> locally? (pip install azdev required)
  • Have you run python scripts/ci/test_index.py -q locally? (pip install wheel==0.30.0 required)
  • My extension version conforms to the Extension version schema

For new extensions:

About Extension Publish

There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json.

@weiliu2dev weiliu2dev requested a review from FumingZhang as a code owner May 1, 2026 02:41
Copilot AI review requested due to automatic review settings May 1, 2026 02:41
@azure-client-tools-bot-prd
Copy link
Copy Markdown

azure-client-tools-bot-prd Bot commented May 1, 2026

❌Azure CLI Extensions Breaking Change Test
❌aks-preview
rule cmd_name rule_message suggest_message
1007 - ParaRemove aks create cmd aks create removed parameter control_plane_scaling_size please add back parameter control_plane_scaling_size for cmd aks create
1010 - ParaPropUpdate aks nodepool add cmd aks nodepool add update parameter spot_max_price: updated property default from nan to nan please change property default from nan to nan for parameter spot_max_price of cmd aks nodepool add
⚠️ 1006 - ParaAdd aks create cmd aks create added parameter enable_os_disk_full_caching
⚠️ 1006 - ParaAdd aks nodepool add cmd aks nodepool add added parameter enable_os_disk_full_caching

@azure-client-tools-bot-prd
Copy link
Copy Markdown

Hi @weiliu2dev,
Please write the description of changes which can be perceived by customers into HISTORY.rst.
If you want to release a new extension version, please update the version in setup.py as well.

@yonzhan
Copy link
Copy Markdown
Collaborator

yonzhan commented May 1, 2026

Thank you for your contribution! We will review the pull request and get back to you soon.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 1, 2026

The git hooks are available for azure-cli and azure-cli-extensions repos. They could help you run required checks before creating the PR.

Please sync the latest code with latest dev branch (for azure-cli) or main branch (for azure-cli-extensions).
After that please run the following commands to enable git hooks:

pip install azdev --upgrade
azdev setup -c <your azure-cli repo path> -r <your azure-cli-extensions repo path>

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 1, 2026

CodeGen Tools Feedback Collection

Thank you for using our CodeGen tool. We value your feedback, and we would like to know how we can improve our product. Please take a few minutes to fill our codegen survey

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 1, 2026

Hi @weiliu2dev

Release Suggestions

Module: aks-preview

  • Update VERSION to 20.0.0b7 in src/aks-preview/setup.py

Notes

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds support for enabling “full-cache ephemeral OS disk” on AKS nodepools (create + nodepool add) in the aks-preview extension.

Changes:

  • Adds --enable-os-disk-full-caching (preview) to az aks create and az aks nodepool add.
  • Wires the new flag through the agentpool decorator context and agentpool profile construction.
  • Adds unit tests and help/changelog documentation for the new flag.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/aks-preview/azext_aks_preview/tests/latest/test_agentpool_decorator.py Adds unit tests for new context getter and decorator setup behavior.
src/aks-preview/azext_aks_preview/custom.py Adds enable_os_disk_full_caching param to command function signatures (but also drops control_plane_scaling_size).
src/aks-preview/azext_aks_preview/agentpool_decorator.py Implements getter + agentpool field setup and plugs it into profile construction.
src/aks-preview/azext_aks_preview/_params.py Adds CLI arguments for the new flag (but removes control_plane_scaling_size argument).
src/aks-preview/azext_aks_preview/_help.py Documents the new flag (but removes --control-plane-scaling-size help/examples).
src/aks-preview/HISTORY.rst Adds changelog entry for new flag; still mentions --control-plane-scaling-size.
Comments suppressed due to low confidence (1)

src/aks-preview/azext_aks_preview/_params.py:1274

  • The aks create argument definition for control_plane_scaling_size was removed here, but managed_cluster_decorator.py still reads raw_param['control_plane_scaling_size'] and there are existing tests and HISTORY entries for this flag. This looks like an accidental regression that will make --control-plane-scaling-size/--cp-scaling-size unavailable. Please restore the c.argument(...) block (or, if intentionally removed, also clean up the decorator/tests/HISTORY accordingly).
        c.argument(
            "enable_gateway_api",
            action="store_true",
            help="Enable managed installation of Gateway API CRDs from the standard release channel."
        )
        c.argument(
            "enable_app_routing_istio",
            options_list=["--enable-app-routing-istio", "--enable-ari"],
            action="store_true",
            is_preview=True,
            help="Enable Gateway API based ingress on App Routing via Istio"
        )
        c.argument("enable_hosted_system", action="store_true", is_preview=True)
        c.argument(
            "enable_continuous_control_plane_and_addon_monitor",
            action="store_true",
            is_preview=True,
            help="Enable continuous control plane and addon monitor for the cluster.",
        )

Comment thread src/aks-preview/HISTORY.rst
Comment thread src/aks-preview/azext_aks_preview/custom.py
Comment thread src/aks-preview/azext_aks_preview/_help.py
Comment thread src/aks-preview/azext_aks_preview/_help.py
Comment thread src/aks-preview/HISTORY.rst Outdated
@FumingZhang
Copy link
Copy Markdown
Member

/azp run

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 2 pipeline(s).

@FumingZhang
Copy link
Copy Markdown
Member

highly recommend adding a scenario test to cover the change

@yonzhan yonzhan requested a review from yanzhudd May 1, 2026 07:12
@weiliu2dev weiliu2dev force-pushed the weiliu2/osdisk_fullcache branch 3 times, most recently from 4256ea9 to d97c877 Compare May 4, 2026 02:09
@weiliu2dev
Copy link
Copy Markdown
Author

highly recommend adding a scenario test to cover the change

Added in latest push (531dffb):

  • test_aks_create_with_os_disk_full_caching and test_aks_nodepool_add_with_os_disk_full_caching
    in tests/latest/test_aks_commands.py
  • Used @live_only() decorator following the enable_artifact_streaming pattern, since the feature
    is gated by Microsoft.ContainerService/FullCachePreview AFEC and an RP-side toggle
  • Removed the missing_parameter_test_coverage linter exclusions — no longer needed

@weiliu2dev weiliu2dev force-pushed the weiliu2/osdisk_fullcache branch from d97c877 to 531dffb Compare May 4, 2026 02:28
@weiliu2dev weiliu2dev force-pushed the weiliu2/osdisk_fullcache branch from 531dffb to f97ce1f Compare May 4, 2026 03:15
Comment thread src/aks-preview/HISTORY.rst
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants