-
Notifications
You must be signed in to change notification settings - Fork 558
Kubernetes: ensure params vals are bool, with test #3285
Conversation
kubernetesHyperkubeSpec = properties.OrchestratorProfile.KubernetesConfig.CustomHyperkubeImage | ||
dockerEngineVersion := KubeConfigs[k8sVersion]["dockerEngineVersion"] | ||
|
||
if properties.OrchestratorProfile.KubernetesConfig != nil { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Re-arranged params assignment so that all kubernetesConfig
dereferences are nil-checked.
aciConnectorAddon := getAddonByName(properties.OrchestratorProfile.KubernetesConfig.Addons, DefaultACIConnectorAddonName) | ||
c = getAddonContainersIndexByName(aciConnectorAddon.Containers, DefaultACIConnectorAddonName) | ||
if c > -1 { | ||
addValue(parametersMap, "kubernetesACIConnectorEnabled", helpers.IsTrueBoolPointer(aciConnectorAddon.Enabled)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@amanohar hard to see in this diff, but we're now passing a bool to params and not a pointer
addValue(parametersMap, "kubernetesClusterAutoscalerMemoryLimit", clusterAutoscalerAddon.Containers[c].MemoryLimits) | ||
addValue(parametersMap, "kubernetesClusterAutoscalerMinNodes", clusterAutoscalerAddon.Config["minNodes"]) | ||
addValue(parametersMap, "kubernetesClusterAutoscalerMaxNodes", clusterAutoscalerAddon.Config["maxNodes"]) | ||
addValue(parametersMap, "kubernetesClusterAutoscalerEnabled", helpers.IsTrueBoolPointer(clusterAutoscalerAddon.Enabled)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ditto
assignKubernetesParameters(containerService.Properties, parametersMap, cloudSpecConfig, DefaultGeneratorCode) | ||
for k, v := range parametersMap { | ||
switch val := v.(paramsMap)["value"].(type) { | ||
case *bool: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This test iterates through all testdata api models, and then performs the params assignment, and then ensures that there are no *bool
type values.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: CecileRobertMichon, jackfrancis The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Codecov Report
@@ Coverage Diff @@
## master #3285 +/- ##
==========================================
- Coverage 53.31% 52.65% -0.67%
==========================================
Files 104 104
Lines 15574 15580 +6
==========================================
- Hits 8304 8204 -100
- Misses 6537 6646 +109
+ Partials 733 730 -3 |
* 'master' of https://github.com/Azure/acs-engine: (44 commits) remove duplicate ebtables (Azure#3308) Kubernetes: Remove Windows-specific foo for control plane config (Azure#3240) add k8s 1.8.14 (Azure#3303) run /usr/lib/apt/apt.systemd.daily in background (Azure#3304) add annotation to secrets field (Azure#3292) fix(oms): pull oms directly from docker (Azure#3294) ensure params vals are bool, with test (Azure#3285) udpate to latest 16.04 LTS image (Azure#3286) Enable openshift e2e tests on centos (Azure#2910) remove docker dependency from hyperkube extract (Azure#3296) remove pathological test (Azure#3291) Refactor validateDNSPrefix function in one place (Azure#3276) remove unnecessary nil check (Azure#3290) Fixing panic issue in Validate when properties are nil (Azure#3242) Updating the omsagent yaml file to include new changes for node zero dependency (Azure#3277) revert Azure CNI to 1.0.4 (Azure#3289) Add e2e test for openshift vnet (Azure#3274) Support upgrading a Kubernetes cluster that contains Virtual Machine Scale Sets (Azure#3223) Set extension for custom DNS (Azure#3264) don't exit CSE on apt.systemd.daily error (Azure#3278) ...
What this PR does / why we need it: Explicitly pass in a bool (not *bool) to params to ensure we never have a type mismatch between ARM and golang
Which issue this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)
format, will close that issue when PR gets merged): fixes #3279Special notes for your reviewer:
If applicable:
Release note: