func setProxy()

in pkg/userdata/cloudinit/cloudinit.go [108:131]


func setProxy(proxy *etcdbootstrapv1.ProxyConfiguration, input *userdata.BaseUserData) error {
	if proxy == nil {
		return nil
	}
	tmpl := template.New("proxy").Funcs(template.FuncMap{"stringsJoin": strings.Join})
	t, err := tmpl.Parse(proxyConf)
	if err != nil {
		return fmt.Errorf("failed to parse proxy template: %v", err)
	}

	var out bytes.Buffer
	if err = t.Execute(&out, proxy); err != nil {
		return fmt.Errorf("error generating proxy config file: %v", err)
	}

	input.AdditionalFiles = append(input.AdditionalFiles, capbk.File{
		Content: out.String(),
		Owner:   "root:root",
		Path:    "/etc/systemd/system/containerd.service.d/http-proxy.conf",
	})

	input.PreEtcdadmCommands = append(input.PreEtcdadmCommands, containerdRestart...)
	return nil
}