Conversation
There was a problem hiding this comment.
Pull request overview
This PR fixes several bugs related to scriptless node provisioning:
Changes:
- Changed the LoadBalancerStandard constant value from "Standard" to "standard" for consistency with other constants
- Fixed double base64 encoding issue with service principal secrets by removing the extra encoding layer in aks-node-controller
- Updated e2e secret leak validation to use exact word matching instead of partial matching to reduce false positives
- Added test coverage for kubelet flag validation and service principal configuration
- Enhanced e2e log collection to include additional configuration files for debugging
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| aks-node-controller/helpers/const.go | Changed LoadBalancerStandard constant from "Standard" to "standard" for consistency |
| aks-node-controller/helpers/utils_test.go | Updated test expectations to match new lowercase constant values and added comprehensive tests for kubelet flag validation |
| aks-node-controller/parser/helper.go | Removed getServicePrincipalFileContent helper function that was adding extra base64 encoding |
| aks-node-controller/parser/parser.go | Updated to directly use ServicePrincipalSecret without additional encoding |
| aks-node-controller/parser/parser_test.go | Added test to verify service principal secret is passed without double encoding |
| e2e/node_config.go | Updated test templates to use base64 encoded service principal secrets |
| e2e/validators.go | Added fileHasExactContent function and ValidateFileExcludesExactContent for exact word matching, updated ValidateLeakedSecrets to use exact matching |
| e2e/vmss.go | Added extraction of aks-node-controller configuration files and azure.json for debugging |
e2e/validators.go
Outdated
| } | ||
|
|
||
| // ValidateFileHasContent passes the test if the specified file contains the specified contents. | ||
| // The contents doesn't need to surrounded by non-word characters. |
There was a problem hiding this comment.
Typo in the comment: "doesn't need to surrounded" should be "doesn't need to be surrounded".
e2e/validators.go
Outdated
| } | ||
|
|
||
| // ValidateFileExcludesContent fails the test if the specified file contains the specified contents. | ||
| // The contents doesn't need to surrounded by non-word characters. |
There was a problem hiding this comment.
Typo in the comment: "doesn't need to surrounded" should be "doesn't need to be surrounded".
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…gentBaker into devinwon/scriptless_bugs
|
@Devinwong I've opened a new pull request, #7699, to work on those changes. Once the pull request is ready, I'll request review from you. |
|
Windows e2e failed. But the changes here is Linux Scriptless only. |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: Devin Wong <wongsiosun@outlook.com>
What this PR does / why we need it:
Fixing a few bugs we found recently:
ValidateLeakedSecretsto check the whole word instead of partial word match.Which issue(s) this PR fixes:
Fixes #