From 70fec8fb1ff2def030413a2b7ad91ba8423e344e Mon Sep 17 00:00:00 2001 From: Philip O'Toole Date: Fri, 29 Nov 2019 15:25:55 -0500 Subject: [PATCH 1/2] Add HTTP proxy (from environment) support Port PR573. --- cmd/rqlite/backup.go | 1 + cmd/rqlite/main.go | 2 ++ 2 files changed, 3 insertions(+) diff --git a/cmd/rqlite/backup.go b/cmd/rqlite/backup.go index 84ba90cf..770499a8 100644 --- a/cmd/rqlite/backup.go +++ b/cmd/rqlite/backup.go @@ -99,6 +99,7 @@ func makeRestoreRequest(restoreFile io.Reader) func(string) (*http.Request, erro func restore(ctx *cli.Context, filename string, argv *argT) error { statusURL := fmt.Sprintf("%s://%s:%d/status", argv.Protocol, argv.Host, argv.Port) client := http.Client{Transport: &http.Transport{ + Proxy: http.ProxyFromEnvironment, TLSClientConfig: &tls.Config{InsecureSkipVerify: argv.Insecure}, }} statusResp, err := client.Get(statusURL) diff --git a/cmd/rqlite/main.go b/cmd/rqlite/main.go index c407fb72..69022860 100644 --- a/cmd/rqlite/main.go +++ b/cmd/rqlite/main.go @@ -178,6 +178,7 @@ func sendRequest(ctx *cli.Context, makeNewRequest func(string) (*http.Request, e client := http.Client{Transport: &http.Transport{ TLSClientConfig: &tls.Config{InsecureSkipVerify: argv.Insecure, RootCAs: rootCAs}, + Proxy: http.ProxyFromEnvironment, }} // Explicitly handle redirects. @@ -261,6 +262,7 @@ func cliJSON(ctx *cli.Context, cmd, line, url string, argv *argT) error { client := http.Client{Transport: &http.Transport{ TLSClientConfig: &tls.Config{InsecureSkipVerify: argv.Insecure}, + Proxy: http.ProxyFromEnvironment, }} resp, err := client.Get(url) if err != nil { From 8667b99979e281e4ea5e69cdf4381da0fc6db966 Mon Sep 17 00:00:00 2001 From: Philip O'Toole Date: Fri, 29 Nov 2019 15:27:04 -0500 Subject: [PATCH 2/2] Update CHANGELOG --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 77d42c2f..f9ca6413 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,5 @@ ## 4.6.0 (unreleased) +- [PR #593](https://github.com/rqlite/rqlite/pull/593): rqlite CLI now supports HTTP proxy. Thanks @paulstuart - [PR #592](https://github.com/rqlite/rqlite/pull/592): Add .dump to CLI. - [PR #591](https://github.com/rqlite/rqlite/pull/591): Store layer supports generating SQL format backups. - [PR #590](https://github.com/rqlite/rqlite/pull/590): DB layer supports generating SQL format backups.