From 7e7bb065eb0f27d2e078fa7fa533fad43a35126c Mon Sep 17 00:00:00 2001 From: urso Date: Tue, 29 Jun 2021 16:11:46 +0200 Subject: [PATCH] review --- .../common/transport/httpcommon/httpcommon.go | 10 +++---- .../elastic-agent/pkg/agent/cmd/container.go | 4 --- x-pack/elastic-agent/pkg/remote/client.go | 28 +++---------------- 3 files changed, 9 insertions(+), 33 deletions(-) diff --git a/libbeat/common/transport/httpcommon/httpcommon.go b/libbeat/common/transport/httpcommon/httpcommon.go index 47cbe36a71c..8f79f357183 100644 --- a/libbeat/common/transport/httpcommon/httpcommon.go +++ b/libbeat/common/transport/httpcommon/httpcommon.go @@ -215,9 +215,9 @@ func (settings *HTTPTransportSettings) RoundTripper(opts ...TransportOption) (ht var rt http.RoundTripper if extra.http2 { - rt, err = settings.HTTP2RoundTripper(tls, dialer, tlsDialer, opts...) + rt, err = settings.http2RoundTripper(tls, dialer, tlsDialer, opts...) } else { - rt, err = settings.HTTPRoundTripper(tls, dialer, tlsDialer, opts...) + rt, err = settings.httpRoundTripper(tls, dialer, tlsDialer, opts...) } for _, opt := range opts { @@ -228,7 +228,7 @@ func (settings *HTTPTransportSettings) RoundTripper(opts ...TransportOption) (ht return rt, nil } -func (settings *HTTPTransportSettings) HTTPRoundTripper( +func (settings *HTTPTransportSettings) httpRoundTripper( tls *tlscommon.TLSConfig, dialer, tlsDialer transport.Dialer, opts ...TransportOption, @@ -256,12 +256,12 @@ func (settings *HTTPTransportSettings) HTTPRoundTripper( return t, nil } -func (settings *HTTPTransportSettings) HTTP2RoundTripper( +func (settings *HTTPTransportSettings) http2RoundTripper( tls *tlscommon.TLSConfig, dialer, tlsDialer transport.Dialer, opts ...TransportOption, ) (*http2.Transport, error) { - t1, err := settings.HTTPRoundTripper(tls, dialer, tlsDialer, opts...) + t1, err := settings.httpRoundTripper(tls, dialer, tlsDialer, opts...) if err != nil { return nil, err } diff --git a/x-pack/elastic-agent/pkg/agent/cmd/container.go b/x-pack/elastic-agent/pkg/agent/cmd/container.go index 41041656518..cc925d0cb4e 100644 --- a/x-pack/elastic-agent/pkg/agent/cmd/container.go +++ b/x-pack/elastic-agent/pkg/agent/cmd/container.go @@ -453,13 +453,9 @@ func kibanaFetchToken(cfg setupConfig, client *kibana.Client, policy *kibanaPoli func kibanaClient(cfg kibanaConfig, headers map[string]string) (*kibana.Client, error) { var tls *tlscommon.Config if cfg.Fleet.CA != "" { - var err error tls = &tlscommon.Config{ CAs: []string{cfg.Fleet.CA}, } - if err != nil { - return nil, err - } } transport := httpcommon.DefaultHTTPTransportSettings() diff --git a/x-pack/elastic-agent/pkg/remote/client.go b/x-pack/elastic-agent/pkg/remote/client.go index 996f0aabd81..44f5b7ad562 100644 --- a/x-pack/elastic-agent/pkg/remote/client.go +++ b/x-pack/elastic-agent/pkg/remote/client.go @@ -116,12 +116,11 @@ func NewWithConfig(log *logger.Logger, cfg Config, wrapper wrapperFunc) (*Client if err != nil { return nil, errors.Wrap(err, "invalid fleet-server endpoint") } - addr, err := url.Parse(connStr) - if err != nil { - return nil, errors.Wrap(err, "invalid fleet-server endpoint") - } - transport, err := makeTransport(cfg, addr.Scheme) + transport, err := cfg.Transport.RoundTripper( + httpcommon.WithAPMHTTPInstrumentation(), + httpcommon.WithForceAttemptHTTP2(true), + ) if err != nil { return nil, err } @@ -273,22 +272,3 @@ func prefixRequestFactory(URL string) requestFunc { return http.NewRequest(method, newPath, body) } } - -// makeTransport create a transport object based on the TLS configuration. -func makeTransport(cfg Config, scheme string) (http.RoundTripper, error) { - opts := []httpcommon.TransportOption{ - httpcommon.WithAPMHTTPInstrumentation(), - } - - // Connect to fleet server via HTTP2 only if no proxy is configured. - // The HTTP2 only transport will ignore HTTP_PROXY, HTTPS_PPROXY, and NO_PROXY - // environment variables. - http2Only := scheme == "https" - if http2Only && cfg.Transport.Proxy.URL == nil { - opts = append(opts, httpcommon.WithHTTP2Only(true)) - } else { - opts = append(opts, httpcommon.WithForceAttemptHTTP2(true)) - } - - return cfg.Transport.RoundTripper(opts...) -}