in projects/aws/bottlerocket-bootstrap/pkg/kubeadm/utils.go [88:105]
func getBootstrapFromJoinConfig(path string) (string, string, error) {
data, err := ioutil.ReadFile(path)
if err != nil {
return "", "", errors.Wrap(err, "Error reading kubeadm join config file")
}
joinConfig := strings.TrimPrefix(string(data), "---")
kubeadmJoinData, err := unmarshalIntoMap([]byte(joinConfig))
if err != nil {
return "", "", errors.Wrap(err, "failed unmarshalling yaml kubeadm join config to interfaces")
}
discovery := kubeadmJoinData["discovery"].(map[string]interface{})
bootstrapToken := discovery["bootstrapToken"].(map[string]interface{})
serverEndpoint := bootstrapToken["apiServerEndpoint"].(string)
token := bootstrapToken["token"].(string)
return "https://" + serverEndpoint, token, nil
}