func assignDefaultComponentVals()

in pkg/api/components.go [185:239]


func assignDefaultComponentVals(component, defaultComponent KubernetesComponent, isUpgrade bool) KubernetesComponent {
	if component.Name == "" {
		component.Name = defaultComponent.Name
	}
	if component.Enabled == nil {
		component.Enabled = defaultComponent.Enabled
	}
	if !to.Bool(component.Enabled) {
		return KubernetesComponent{
			Name:    component.Name,
			Enabled: component.Enabled,
		}
	}
	if component.Data != "" {
		return KubernetesComponent{
			Name:    component.Name,
			Enabled: component.Enabled,
			Data:    component.Data,
		}
	}
	for i := range defaultComponent.Containers {
		c := component.GetContainersIndexByName(defaultComponent.Containers[i].Name)
		if c < 0 {
			component.Containers = append(component.Containers, defaultComponent.Containers[i])
		} else {
			if component.Containers[c].Image == "" || isUpgrade {
				component.Containers[c].Image = defaultComponent.Containers[i].Image
			}
			if component.Containers[c].CPURequests == "" {
				component.Containers[c].CPURequests = defaultComponent.Containers[i].CPURequests
			}
			if component.Containers[c].MemoryRequests == "" {
				component.Containers[c].MemoryRequests = defaultComponent.Containers[i].MemoryRequests
			}
			if component.Containers[c].CPULimits == "" {
				component.Containers[c].CPULimits = defaultComponent.Containers[i].CPULimits
			}
			if component.Containers[c].MemoryLimits == "" {
				component.Containers[c].MemoryLimits = defaultComponent.Containers[i].MemoryLimits
			}
		}
	}
	if component.Config == nil {
		component.Config = make(map[string]string)
	}
	for key, val := range defaultComponent.Config {
		if key == "command" && isUpgrade {
			component.Config[key] = val
		}
		if v, ok := component.Config[key]; !ok || v == "" {
			component.Config[key] = val
		}
	}
	return component
}