diff --git a/cmd/kube-proxy/app/options/options.go b/cmd/kube-proxy/app/options/options.go index 40d89e3ea9f..a7fa9439f67 100644 --- a/cmd/kube-proxy/app/options/options.go +++ b/cmd/kube-proxy/app/options/options.go @@ -50,8 +50,10 @@ type ProxyServerConfig struct { } func NewProxyConfig() *ProxyServerConfig { + versioned := &v1alpha1.KubeProxyConfiguration{} + api.Scheme.Default(versioned) cfg := componentconfig.KubeProxyConfiguration{} - api.Scheme.Convert(&v1alpha1.KubeProxyConfiguration{}, &cfg, nil) + api.Scheme.Convert(versioned, &cfg, nil) return &ProxyServerConfig{ KubeProxyConfiguration: cfg, ContentType: "application/vnd.kubernetes.protobuf", diff --git a/cmd/kubelet/app/options/options.go b/cmd/kubelet/app/options/options.go index 85ca9771ff9..282cf24d071 100644 --- a/cmd/kubelet/app/options/options.go +++ b/cmd/kubelet/app/options/options.go @@ -64,8 +64,10 @@ type KubeletServer struct { // NewKubeletServer will create a new KubeletServer with default values. func NewKubeletServer() *KubeletServer { + versioned := &v1alpha1.KubeletConfiguration{} + api.Scheme.Default(versioned) config := componentconfig.KubeletConfiguration{} - api.Scheme.Convert(&v1alpha1.KubeletConfiguration{}, &config, nil) + api.Scheme.Convert(versioned, &config, nil) return &KubeletServer{ KubeConfig: flag.NewStringFlag("/var/lib/kubelet/kubeconfig"), RequireKubeConfig: false, // in 1.5, default to true diff --git a/cmd/kubelet/app/server.go b/cmd/kubelet/app/server.go index 05f1279bc15..0a696b25c1f 100644 --- a/cmd/kubelet/app/server.go +++ b/cmd/kubelet/app/server.go @@ -246,6 +246,7 @@ func initKubeletConfigSync(s *options.KubeletServer) (*componentconfig.KubeletCo if err != nil { return nil, err } + api.Scheme.Default(&extKC) kc := componentconfig.KubeletConfiguration{} err = api.Scheme.Convert(&extKC, &kc, nil) if err != nil { diff --git a/pkg/kubemark/hollow_kubelet.go b/pkg/kubemark/hollow_kubelet.go index 672f5685509..30feba4cc91 100644 --- a/pkg/kubemark/hollow_kubelet.go +++ b/pkg/kubemark/hollow_kubelet.go @@ -103,6 +103,7 @@ func GetHollowKubeletConfig( // Do the external -> internal conversion to make sure that defaults // are set for fields not overridden in NewHollowKubelet. tmp := &v1alpha1.KubeletConfiguration{} + api.Scheme.Default(tmp) c := &componentconfig.KubeletConfiguration{} api.Scheme.Convert(tmp, c, nil) diff --git a/plugin/cmd/kube-scheduler/app/options/options.go b/plugin/cmd/kube-scheduler/app/options/options.go index 5a352cf61d0..43a38ca5528 100644 --- a/plugin/cmd/kube-scheduler/app/options/options.go +++ b/plugin/cmd/kube-scheduler/app/options/options.go @@ -42,8 +42,10 @@ type SchedulerServer struct { // NewSchedulerServer creates a new SchedulerServer with default parameters func NewSchedulerServer() *SchedulerServer { + versioned := &v1alpha1.KubeSchedulerConfiguration{} + api.Scheme.Default(versioned) cfg := componentconfig.KubeSchedulerConfiguration{} - api.Scheme.Convert(&v1alpha1.KubeSchedulerConfiguration{}, &cfg, nil) + api.Scheme.Convert(versioned, &cfg, nil) cfg.LeaderElection.LeaderElect = true s := SchedulerServer{ KubeSchedulerConfiguration: cfg, diff --git a/test/e2e_node/dynamic_kubelet_configuration_test.go b/test/e2e_node/dynamic_kubelet_configuration_test.go index 036d44755b0..674022b1fd5 100644 --- a/test/e2e_node/dynamic_kubelet_configuration_test.go +++ b/test/e2e_node/dynamic_kubelet_configuration_test.go @@ -142,6 +142,8 @@ func decodeConfigz(resp *http.Response) (*componentconfig.KubeletConfiguration, return nil, err } + api.Scheme.Default(&configz.ComponentConfig) + err = api.Scheme.Convert(&configz.ComponentConfig, &kubeCfg, nil) if err != nil { return nil, err