From 79778288de676b5d2fde1f11ca92d57a3bf638f0 Mon Sep 17 00:00:00 2001 From: Tim Hockin Date: Wed, 22 Nov 2017 14:17:10 -0800 Subject: [PATCH] Fix NewProxyServer Different OSes need different args. This is not a great fix, but better than adding an arg to Windows which doesn't need it. --- cmd/kube-proxy/app/server.go | 2 +- cmd/kube-proxy/app/server_others.go | 12 +++++++++++- cmd/kube-proxy/app/server_test.go | 2 +- cmd/kube-proxy/app/server_windows.go | 6 +++++- 4 files changed, 18 insertions(+), 4 deletions(-) diff --git a/cmd/kube-proxy/app/server.go b/cmd/kube-proxy/app/server.go index 52acff8e76..6de788607f 100644 --- a/cmd/kube-proxy/app/server.go +++ b/cmd/kube-proxy/app/server.go @@ -218,7 +218,7 @@ func (o *Options) Run() error { return o.writeConfigFile() } - proxyServer, err := NewProxyServer(o.config, o.CleanupAndExit, o.CleanupIPVS, o.scheme, o.master) + proxyServer, err := NewProxyServer(o) if err != nil { return err } diff --git a/cmd/kube-proxy/app/server_others.go b/cmd/kube-proxy/app/server_others.go index fa76f6130b..380e83e2a0 100644 --- a/cmd/kube-proxy/app/server_others.go +++ b/cmd/kube-proxy/app/server_others.go @@ -54,7 +54,17 @@ import ( ) // NewProxyServer returns a new ProxyServer. -func NewProxyServer(config *proxyconfigapi.KubeProxyConfiguration, cleanupAndExit bool, cleanupIPVS bool, scheme *runtime.Scheme, master string) (*ProxyServer, error) { +func NewProxyServer(o *Options) (*ProxyServer, error) { + return newProxyServer(o.config, o.CleanupAndExit, o.CleanupIPVS, o.scheme, o.master) +} + +func newProxyServer( + config *proxyconfigapi.KubeProxyConfiguration, + cleanupAndExit bool, + cleanupIPVS bool, + scheme *runtime.Scheme, + master string) (*ProxyServer, error) { + if config == nil { return nil, errors.New("config is required") } diff --git a/cmd/kube-proxy/app/server_test.go b/cmd/kube-proxy/app/server_test.go index b36904caea..e957e262e7 100644 --- a/cmd/kube-proxy/app/server_test.go +++ b/cmd/kube-proxy/app/server_test.go @@ -162,7 +162,7 @@ func TestProxyServerWithCleanupAndExit(t *testing.T) { } options.CleanupAndExit = true - proxyserver, err := NewProxyServer(options.config, options.CleanupAndExit, options.CleanupIPVS, options.scheme, options.master) + proxyserver, err := NewProxyServer(options) assert.Nil(t, err, "unexpected error in NewProxyServer, addr: %s", addr) assert.NotNil(t, proxyserver, "nil proxy server obj, addr: %s", addr) diff --git a/cmd/kube-proxy/app/server_windows.go b/cmd/kube-proxy/app/server_windows.go index 12c36ac56e..1fb4f4ce7e 100644 --- a/cmd/kube-proxy/app/server_windows.go +++ b/cmd/kube-proxy/app/server_windows.go @@ -46,7 +46,11 @@ import ( ) // NewProxyServer returns a new ProxyServer. -func NewProxyServer(config *proxyconfigapi.KubeProxyConfiguration, cleanupAndExit bool, scheme *runtime.Scheme, master string) (*ProxyServer, error) { +func NewProxyServer(o *Options) (*ProxyServer, error) { + return newProxyServer(o.config, o.CleanupAndExit, o.scheme, o.master) +} + +func newProxyServer(config *proxyconfigapi.KubeProxyConfiguration, cleanupAndExit bool, scheme *runtime.Scheme, master string) (*ProxyServer, error) { if config == nil { return nil, errors.New("config is required") }