Repository navigation
test(e2e): enable kubelet configuration files by default - #9841
Open
Abigail Liang (abigailliang-aks-sig-node) wants to merge 1 commit into
Open
Abigail Liang (abigailliang-aks-sig-node) wants to merge 1 commit into
Abigail Liang (abigailliang-aks-sig-node) wants to merge 1 commit into
Conversation
Use kubelet configuration files for ordinary Linux scenarios across NBC and ANC provisioning, preserve effective scenario settings and legacy CLI opt-outs, and validate the live kubelet configuration. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 30eea18e-9ed3-40c2-81a6-a2f16ba2d0e4
Abigail Liang (abigailliang-aks-sig-node)
requested review from
a team
as code owners
October 21, 2026 01:11
Copilot started reviewing on behalf of
Abigail Liang (abigailliang-aks-sig-node)
October 21, 2026 01:12
Contributor
Windows Unit Test Results 3 files 18 suites 1m 13s ⏱️ Results for commit 8566f0c. |
Contributor
Contributor
|
Contributor
Contributor
There was a problem hiding this comment.
🔵 Needs a closer look
The suite-wide Linux defaults and common validator have not been exercised together in cloud E2E runs against this PR.
No open issues 🎉
What changed in this PR
Makes kubelet configuration-file mode the default for Linux AgentBaker E2E scenarios, while preserving legacy CLI opt-outs and Windows behavior.
Changes:
- Enable shared defaults and preserve effective settings during NBC-to-ANC conversion.
- Validate the running kubelet’s configuration argument and file type.
- Add regression tests and document defaults and opt-outs.
| File | Description |
|---|---|
| e2e/scenario/validators.go | Checks active kubelet arguments and configuration type. |
| e2e/scenario/validation.go | Registers common Linux configuration validation. |
| e2e/scenario/scenario.go | Preserves two explicit legacy CLI scenarios. |
| e2e/scenario/node_config.go | Enables defaults and preserves converted settings. |
| e2e/scenario/node_config_test.go | Tests defaults, overrides, and opt-outs. |
| e2e/README.md | Documents configuration defaults and legacy opt-outs. |
Review effort: Balanced
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
Switch ordinary Linux AgentBaker E2E scenarios to kubelet configuration-file mode by default, rather than enabling it only in selected scenarios.
--config /etc/default/kubeletconfig.jsonargument and the configuration file's type.Which issue(s) this PR fixes:
No linked issue.
Validation:
From
e2e/:Both commands passed after rebasing onto the latest main. The unfiltered local test run failed only the three existing log-collection tests above because GNU
timeoutis not installed on the macOS test host; those tests were excluded from the passing run.New regression tests cover default configuration generation for Kubernetes 1.33, 1.36, and 1.37 on amd64/arm64, preservation of scenario-specific and custom kubelet settings, and the existing CLI opt-outs.
Before the permanent default change, a targeted Kubernetes 1.37.1 staging smoke passed for both NBC/CSE and AKSNodeConfig/scriptless provisioning with Ubuntu 24.04 Gen2. Each path created a real VM, confirmed the active kubelet used the configuration file, reached Node Ready, and ran test pods. Those smoke scenarios explicitly enabled the feature; they are supporting evidence, not a cloud E2E run against this PR's new defaults or common validator. All resources from that smoke were deleted.
The full cloud E2E suite has not been run against this PR.