Lily/scriptless/root use aks node controller gpu - #9048
Conversation
Moves GPU driver/SKU logic (previously imported from the root github.com/Azure/agentbaker module) into a new local package, aks-node-controller/pkg/gpu. Also inlines the small set of helper functions aks-node-controller needed from the root module (IsKubernetesVersionGe, GetCSETimeout) and removes the now-unused aks-node-controller/helpers/utils.go. This drops the aks-node-controller module's dependency on the root agentbaker module entirely, removing its heavy transitive dependencies (butane, ignition, coreos, etc.) from the standalone aks-node-controller/aks-node-config-manager binaries and eliminating the circular module relationship (root -> aks-node-controller in a follow-up PR, instead of aks-node-controller -> root today). This is split out from the original combined change so it can be merged and published as its own aks-node-controller/vX.Y.Z tag; a follow-up PR will update the root module to import that published tag and delegate its GPU logic to this new package. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: f2099757-d076-4ac0-9b78-f2da962cdbbb
Delegates root's GPU driver/SKU/config logic (GetGPUDriverVersion,
GetAKSGPUImageSHA, GetGPUDriverType, GPUNeedsFabricManager, and the
components.json GPU config loader in pkg/agent/datamodel) to the new
github.com/Azure/agentbaker/aks-node-controller/pkg/gpu package,
removing the duplicated inline implementations from the root module.
This is a follow-up to the aks-node-controller-only change that
introduced pkg/gpu (split out into its own PR so it could be merged
and published as an aks-node-controller/vX.Y.Z tag first). For now
this still uses the local 'replace github.com/Azure/agentbaker/aks-node-controller
=> ./aks-node-controller' directive in go.mod/e2e/go.mod so this
branch keeps building/testing correctly while stacked on top of the
not-yet-merged aks-node-controller change.
TODO once the aks-node-controller change is merged to main and a new
aks-node-controller/vX.Y.Z tag is published:
- remove the local replace directives in go.mod and e2e/go.mod
- bump the require github.com/Azure/agentbaker/aks-node-controller
line to the newly published tag
- run go mod tidy (root and e2e) and rebase this branch onto main
- retarget this PR's base branch to main
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: f2099757-d076-4ac0-9b78-f2da962cdbbb
PR Title Lint Failed ❌Current Title: Your PR title doesn't follow the expected format. Please update your PR title to follow one of these patterns: Conventional Commits Format:
Guidelines:
Examples:
Please update your PR title and the lint check will run again automatically. |
Windows Unit Test Results 3 files 11 suites 50s ⏱️ Results for commit d5338be. |
AgentBaker Linux gate detectiveRun: 173966872 Detective summary: VMSS creation completed, but all 5 Bastion SSH handshake attempts to the node timed out with context deadline exceeded; SSH log extraction was skipped because no SSH connection was established. Likely cause / signature: Known Bastion/shared-cluster network reachability flake tracked by repair item #38743364, not a PR product signal. Confidence: High Recommended owner/action: Node Lifecycle / E2E infra owners should continue repair item #38743364 and investigate Bastion/shared-cluster SSH reachability; no PR author action recommended from this signal. Strongest alternative: PR #9048 GPU root-module changes broke node setup, but less likely because the failure is at Bastion SSH handshake before node diagnostics and the PR scope is unrelated to Bastion networking. Evidence: timeline failed task exit 1; failed test run 547964663; task log 562 around line 766; build/PR metadata. |
What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #