func()

in pkg/agent/datamodel/types.go [1568:1606]


func (config *NodeBootstrappingConfiguration) GetOrderedKubeletConfigStringForPowershell(customKc *CustomKubeletConfig) string {
	kubeletConfig := config.KubeletConfig
	if kubeletConfig == nil {
		kubeletConfig = map[string]string{}
	}

	// override default kubelet configuration with customzied ones.
	if config.ContainerService != nil && config.ContainerService.Properties != nil {
		kubeletCustomConfiguration := config.ContainerService.Properties.GetComponentWindowsKubernetesConfiguration(Componentkubelet)
		if kubeletCustomConfiguration != nil {
			config := kubeletCustomConfiguration.Config
			for k, v := range config {
				kubeletConfig[k] = v
			}
		}
	}

	// Settings from customKubeletConfig, only take if it's set.
	kubeletConfig = setCustomKubletConfigFromSettings(customKc, kubeletConfig)

	if len(kubeletConfig) == 0 {
		return ""
	}

	commandLineOmmittedKubeletConfigFlags := GetCommandLineOmittedKubeletConfigFlags()
	keys := []string{}
	for key := range kubeletConfig {
		if !commandLineOmmittedKubeletConfigFlags[key] {
			keys = append(keys, key)
		}
	}

	sort.Strings(keys)
	var buf bytes.Buffer
	for _, key := range keys {
		buf.WriteString(fmt.Sprintf("\"%s=%s\", ", key, kubeletConfig[key]))
	}
	return strings.TrimSuffix(buf.String(), ", ")
}