modules: Add modules.Workspace config for Go 1.18

Sets `GOWORK` env var for Go 1.18.

Fixes #9525
This commit is contained in:
Bjørn Erik Pedersen 2022-02-18 12:43:59 +01:00
parent b0eea00756
commit a87be597af
3 changed files with 11 additions and 0 deletions

View file

@ -90,6 +90,7 @@ func NewClient(cfg ClientConfig) *Client {
"GOPRIVATE", mcfg.Private,
"GONOPROXY", mcfg.NoProxy,
"GOPATH", cfg.CacheDir,
"GOWORK", mcfg.Workspace, // Requires Go 1.18, see https://tip.golang.org/doc/go1.18
// GOCACHE was introduced in Go 1.15. This matches the location derived from GOPATH above.
"GOCACHE", filepath.Join(cfg.CacheDir, "pkg", "mod"),
)

View file

@ -295,6 +295,12 @@ type Config struct {
NoProxy string
// Configures GOPRIVATE.
Private string
// Set the workspace file to use, e.g. hugo.work.
// Enables Go "Workspace" mode.
// Requires Go 1.18+
// See https://tip.golang.org/doc/go1.18
Workspace string
}
// hasModuleImport reports whether the project config have one or more