From 138bc69f0f6c8751b91488ef7f091c84bdacde64 Mon Sep 17 00:00:00 2001 From: Niklas Wik Date: Mon, 17 Dec 2018 10:26:24 +0200 Subject: [PATCH] Add support for http proxy in transport Signed-off-by: Niklas Wik --- src/common/http/client.go | 6 +++++- src/common/utils/registry/registry.go | 3 +++ src/common/utils/uaa/client.go | 2 +- src/core/config/config.go | 1 + 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/common/http/client.go b/src/common/http/client.go index 62b225a7b..0ee74d8d6 100644 --- a/src/common/http/client.go +++ b/src/common/http/client.go @@ -39,7 +39,11 @@ func NewClient(c *http.Client, modifiers ...modifier.Modifier) *Client { client: c, } if client.client == nil { - client.client = &http.Client{} + client.client = &http.Client{ + Transport: &http.Transport{ + Proxy: http.ProxyFromEnvironment, + }, + } } if len(modifiers) > 0 { client.modifiers = modifiers diff --git a/src/common/utils/registry/registry.go b/src/common/utils/registry/registry.go index 9d8ce7639..7af172761 100644 --- a/src/common/utils/registry/registry.go +++ b/src/common/utils/registry/registry.go @@ -21,6 +21,7 @@ import ( "net/http" "net/url" "strings" + // "time" "github.com/goharbor/harbor/src/common/utils" @@ -39,11 +40,13 @@ func init() { defaultHTTPTransport = &http.Transport{} secureHTTPTransport = &http.Transport{ + Proxy: http.ProxyFromEnvironment, TLSClientConfig: &tls.Config{ InsecureSkipVerify: false, }, } insecureHTTPTransport = &http.Transport{ + Proxy: http.ProxyFromEnvironment, TLSClientConfig: &tls.Config{ InsecureSkipVerify: true, }, diff --git a/src/common/utils/uaa/client.go b/src/common/utils/uaa/client.go index 3012cdfec..83f76d22e 100644 --- a/src/common/utils/uaa/client.go +++ b/src/common/utils/uaa/client.go @@ -41,7 +41,7 @@ const ( UsersURLSuffix = "/Users" ) -var uaaTransport = &http.Transport{} +var uaaTransport = &http.Transport{Proxy: http.ProxyFromEnvironment} // Client provides funcs to interact with UAA. type Client interface { diff --git a/src/core/config/config.go b/src/core/config/config.go index ccaf2c18f..0d503b71a 100644 --- a/src/core/config/config.go +++ b/src/core/config/config.go @@ -135,6 +135,7 @@ func initProjectManager() error { } AdmiralClient = &http.Client{ Transport: &http.Transport{ + Proxy: http.ProxyFromEnvironment, TLSClientConfig: &tls.Config{ RootCAs: pool, },