]> Cypherpunks repositories - gostls13.git/commit
cmd/go: add support for GOPROXY list
authorRuss Cox <rsc@golang.org>
Tue, 23 Apr 2019 20:49:44 +0000 (16:49 -0400)
committerRuss Cox <rsc@golang.org>
Thu, 25 Apr 2019 14:54:09 +0000 (14:54 +0000)
commitf30c564529b8297eadfd2441679e5ffe0f9850b8
tree561f648952e5a39cd3947aff540e33119cc02834
parent5fa14a31b0b4bd95cf10a1394d2322db110b25b4
cmd/go: add support for GOPROXY list

Following discussion on golang.org/issue/26334, this CL changes
the GOPROXY environment setting to be a list of proxies, tried in
sequence. The first successful or non-404/410 error is taken as
authoritative. Otherwise the next proxy is tried, and so on.

As in earlier releases, GOPROXY=direct means "connect directly",
but now it can appear in a longer list as well.

This will let companies run a proxy holding only their private modules
and let users set GOPROXY=thatproxy,publicproxy or GOPROXY=thatproxy,direct
to fall back to an alternate mechanism for fetching public modules.

Fixes #26334.

Change-Id: I642f0ae655ec307d9cdcad0830c0baac8670eb9c
Reviewed-on: https://go-review.googlesource.com/c/go/+/173441
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Jay Conrod <jayconrod@google.com>
src/cmd/go/alldocs.go
src/cmd/go/internal/modfetch/proxy.go
src/cmd/go/internal/modfetch/repo.go
src/cmd/go/proxy_test.go
src/cmd/go/testdata/script/mod_proxy_list.txt [new file with mode: 0644]