From 5b356b15a22eda9bf9c42957fec617d2d85326cd Mon Sep 17 00:00:00 2001 From: Mikhail Mazurskiy Date: Sat, 19 May 2018 08:14:37 +1000 Subject: [PATCH] Use Dial with context Kubernetes-commit: 5e8e570dbda6ed89af9bc2e0a05e3d94bfdfcb61 --- pkg/admission/plugin/webhook/config/client.go | 8 +++++--- pkg/storage/storagebackend/factory/etcd2.go | 4 ++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/pkg/admission/plugin/webhook/config/client.go b/pkg/admission/plugin/webhook/config/client.go index fe7687f69..d520fd032 100644 --- a/pkg/admission/plugin/webhook/config/client.go +++ b/pkg/admission/plugin/webhook/config/client.go @@ -17,6 +17,7 @@ limitations under the License. package config import ( + "context" "encoding/json" "errors" "fmt" @@ -147,9 +148,10 @@ func (cm *ClientManager) HookClient(h *v1beta1.Webhook) (*rest.RESTClient, error delegateDialer := cfg.Dial if delegateDialer == nil { - delegateDialer = net.Dial + var d net.Dialer + delegateDialer = d.DialContext } - cfg.Dial = func(network, addr string) (net.Conn, error) { + cfg.Dial = func(ctx context.Context, network, addr string) (net.Conn, error) { if addr == host { u, err := cm.serviceResolver.ResolveEndpoint(svc.Namespace, svc.Name) if err != nil { @@ -157,7 +159,7 @@ func (cm *ClientManager) HookClient(h *v1beta1.Webhook) (*rest.RESTClient, error } addr = u.Host } - return delegateDialer(network, addr) + return delegateDialer(ctx, network, addr) } return complete(cfg) diff --git a/pkg/storage/storagebackend/factory/etcd2.go b/pkg/storage/storagebackend/factory/etcd2.go index 84b038104..41542ccbe 100644 --- a/pkg/storage/storagebackend/factory/etcd2.go +++ b/pkg/storage/storagebackend/factory/etcd2.go @@ -69,10 +69,10 @@ func newTransportForETCD2(certFile, keyFile, caFile string) (*http.Transport, er // TODO: Determine if transport needs optimization tr := utilnet.SetTransportDefaults(&http.Transport{ Proxy: http.ProxyFromEnvironment, - Dial: (&net.Dialer{ + DialContext: (&net.Dialer{ Timeout: 30 * time.Second, KeepAlive: 30 * time.Second, - }).Dial, + }).DialContext, TLSHandshakeTimeout: 10 * time.Second, MaxIdleConnsPerHost: 500, TLSClientConfig: cfg,