func NewJoinEtcdPlane()

in pkg/userdata/cloudinit/etcd_join.go [31:50]


func NewJoinEtcdPlane(input *userdata.EtcdPlaneJoinInput, config etcdbootstrapv1.EtcdadmConfigSpec) ([]byte, error) {
	input.WriteFiles = input.Certificates.AsFiles()
	input.EtcdadmArgs = buildEtcdadmArgs(config)
	input.EtcdadmJoinCommand = userdata.AddSystemdArgsToCommand(fmt.Sprintf(standardJoinCommand, input.JoinAddress), &input.EtcdadmArgs)
	if err := setProxy(config.Proxy, &input.BaseUserData); err != nil {
		return nil, err
	}
	if err := setRegistryMirror(config.RegistryMirror, &input.BaseUserData); err != nil {
		return nil, err
	}
	if err := prepare(&input.BaseUserData); err != nil {
		return nil, err
	}
	userData, err := generate("JoinEtcdCluster", etcdPlaneJoinCloudInit, input)
	if err != nil {
		return nil, errors.Wrapf(err, "failed to generate user data for machine joining etcd cluster")
	}

	return userData, err
}