From f1c323c26885401ac4eaf03e533a1cd2f0daba4b Mon Sep 17 00:00:00 2001 From: Brad Davidson Date: Tue, 29 Mar 2022 11:45:21 -0700 Subject: [PATCH] Skip setting up client tls when etcd server does not have tls enabled Signed-off-by: Brad Davidson --- pkg/etcd/etcd.go | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/pkg/etcd/etcd.go b/pkg/etcd/etcd.go index 2b6d674c44..b2e2293b1d 100644 --- a/pkg/etcd/etcd.go +++ b/pkg/etcd/etcd.go @@ -608,18 +608,20 @@ func getClientConfig(ctx context.Context, runtime *config.ControlRuntime, endpoi if len(endpoints) == 0 { endpoints = getEndpoints(runtime) } - tlsConfig, err := toTLSConfig(runtime) - if err != nil { - return nil, err - } - return &etcd.Config{ + + config := &etcd.Config{ Endpoints: endpoints, - TLS: tlsConfig, Context: ctx, DialTimeout: defaultDialTimeout, DialKeepAliveTime: defaultKeepAliveTime, DialKeepAliveTimeout: defaultKeepAliveTimeout, - }, nil + } + + var err error + if strings.HasPrefix(endpoints[0], "https://") { + config.TLS, err = toTLSConfig(runtime) + } + return config, err } // getEndpoints returns the endpoints from the runtime config if set, otherwise the default endpoint.