From 06707ea76fe2b5503ef504dd1e71fd2788ae2299 Mon Sep 17 00:00:00 2001 From: Ice3man Date: Wed, 30 Jul 2025 21:38:07 +0530 Subject: [PATCH] bugfix: preserve original transport for linear http client (#6357) --- pkg/reporting/trackers/linear/linear.go | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/pkg/reporting/trackers/linear/linear.go b/pkg/reporting/trackers/linear/linear.go index 24b464f33..be8723368 100644 --- a/pkg/reporting/trackers/linear/linear.go +++ b/pkg/reporting/trackers/linear/linear.go @@ -54,15 +54,17 @@ type Options struct { // New creates a new issue tracker integration client based on options. func New(options *Options) (*Integration, error) { + var transport http.RoundTripper = http.DefaultTransport + if options.HttpClient != nil && options.HttpClient.HTTPClient.Transport != nil { + transport = options.HttpClient.HTTPClient.Transport + } + httpClient := &http.Client{ Transport: &addHeaderTransport{ - T: http.DefaultTransport, + T: transport, Key: options.APIKey, }, } - if options.HttpClient != nil { - httpClient.Transport = options.HttpClient.HTTPClient.Transport - } integration := &Integration{ url: "https://api.linear.app/graphql", @@ -385,8 +387,8 @@ func (i *Integration) doGraphqlRequest(ctx context.Context, query string, v any, return err } defer func() { - _ = resp.Body.Close() - }() + _ = resp.Body.Close() + }() if resp.StatusCode != http.StatusOK { body, _ := io.ReadAll(resp.Body) return fmt.Errorf("non-200 OK status code: %v body: %q", resp.Status, body)