提交 967913b9 编写于 作者: M Matt Rickard

Extra arguments need to be quoted

上级 dd50d76e
......@@ -89,11 +89,11 @@ etcd:
dataDir: /data
nodeName: extra-args-minikube
apiServerExtraArgs:
fail-no-swap: true
fail-no-swap: "true"
controllerManagerExtraArgs:
kube-api-burst: 32
kube-api-burst: "32"
schedulerExtraArgs:
scheduler-name: mini-scheduler
scheduler-name: "mini-scheduler"
`,
},
{
......@@ -128,8 +128,8 @@ etcd:
dataDir: /data
nodeName: extra-args-minikube
apiServerExtraArgs:
fail-no-swap: true
kube-api-burst: 32
fail-no-swap: "true"
kube-api-burst: "32"
`,
},
{
......@@ -153,11 +153,11 @@ etcd:
dataDir: /data
nodeName: extra-args-minikube
apiServerExtraArgs:
feature-gates: HugePages=true,OtherFeature=false
feature-gates: "HugePages=true,OtherFeature=false"
controllerManagerExtraArgs:
feature-gates: HugePages=true,OtherFeature=false
feature-gates: "HugePages=true,OtherFeature=false"
schedulerExtraArgs:
feature-gates: HugePages=true,OtherFeature=false
feature-gates: "HugePages=true,OtherFeature=false"
`,
},
{
......@@ -188,12 +188,12 @@ etcd:
dataDir: /data
nodeName: extra-args-minikube
apiServerExtraArgs:
fail-no-swap: true
feature-gates: HugePages=true,OtherFeature=false
fail-no-swap: "true"
feature-gates: "HugePages=true,OtherFeature=false"
controllerManagerExtraArgs:
feature-gates: HugePages=true,OtherFeature=false
feature-gates: "HugePages=true,OtherFeature=false"
schedulerExtraArgs:
feature-gates: HugePages=true,OtherFeature=false
feature-gates: "HugePages=true,OtherFeature=false"
`,
},
{
......
......@@ -18,8 +18,8 @@ package kubeadm
import (
"fmt"
"html/template"
"sort"
"text/template"
)
var kubeadmConfigTemplate = template.Must(template.New("kubeadmConfigTemplate").Funcs(template.FuncMap{
......@@ -89,7 +89,7 @@ func printMapInOrder(m map[string]string, sep string) []string {
}
sort.Strings(keys)
for i, k := range keys {
keys[i] = fmt.Sprintf("%s%s%s", k, sep, m[k])
keys[i] = fmt.Sprintf("%s%s\"%s\"", k, sep, m[k])
}
return keys
}
......@@ -34,7 +34,7 @@ func TestPrintMapInOrder(t *testing.T) {
m: map[string]string{
"a": "1",
},
expected: []string{"a: 1"},
expected: []string{`a: "1"`},
},
{
description: "two kv",
......@@ -43,7 +43,7 @@ func TestPrintMapInOrder(t *testing.T) {
"b": "2",
"a": "1",
},
expected: []string{"a=1", "b=2"},
expected: []string{`a="1"`, `b="2"`},
},
{
description: "no kv",
......
......@@ -65,6 +65,8 @@ var componentToKubeadmConfigKey = map[string]string{
Apiserver: "apiServerExtraArgs",
ControllerManager: "controllerManagerExtraArgs",
Scheduler: "schedulerExtraArgs",
// The Kubelet is not configured in kubeadm, only in systemd.
Kubelet: "",
}
func NewComponentExtraArgs(opts util.ExtraOptionSlice, version semver.Version, featureGates string) ([]ComponentExtraArgs, error) {
......@@ -83,6 +85,9 @@ func NewComponentExtraArgs(opts util.ExtraOptionSlice, version semver.Version, f
for _, component := range keys {
kubeadmComponentKey := componentToKubeadmConfigKey[component]
if kubeadmComponentKey == "" {
continue
}
extraConfig, err := ExtraConfigForComponent(component, opts, version)
if err != nil {
return nil, errors.Wrapf(err, "getting kubeadm extra args for %s", component)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册