Skip to content

Commit 40bd0e2

Browse files
Merge pull request #176 from gridscale/bugfix/fix-invalid-kubeconfig-due-to-escaped-newline-chars-in-kubeconfigStr
Fix invalid kubeconfig when \\n is present in kubeconfigStr
2 parents 3877795 + 6aff3fe commit 40bd0e2

1 file changed

Lines changed: 5 additions & 1 deletion

File tree

cmd/kubernetes.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import (
99
"os"
1010
"path/filepath"
1111
"sort"
12+
"strings"
1213
"time"
1314

1415
"github.com/gridscale/gscloud/render"
@@ -298,7 +299,10 @@ func fetchKubeConfigFromProvider(op runtime.KubernetesOperator, id string) (kube
298299
}
299300

300301
if len(platformService.Properties.Credentials) != 0 {
301-
err := yaml.Unmarshal([]byte(platformService.Properties.Credentials[0].KubeConfig), &kc)
302+
kubeconfigStr := platformService.Properties.Credentials[0].KubeConfig
303+
// replace "\\n" with "\n" in kubeconfig (if present)
304+
kubeconfigStr = strings.ReplaceAll(kubeconfigStr, "\\n", "\n")
305+
err := yaml.Unmarshal([]byte(kubeconfigStr), &kc)
302306
if err != nil {
303307
return kubeConfig{}, time.Time{}, err
304308
}

0 commit comments

Comments
 (0)