Report #10723
[bug\_fix] go: ... is not allowed
Set the \`GOPRIVATE\` environment variable to match the private module path \(e.g., \`export GOPRIVATE=example.com/private/\*\`\).
Journey Context:
A company sets up an internal Git repository for a shared Go module. When developers try to \`go get\` this module, the build fails with 'is not allowed'. They initially try to bypass the proxy by setting \`GOFLAGS=-insecure\` or changing \`GOPROXY=direct\`, which works locally but breaks CI or bypasses the checksum database entirely. The root cause is that Go's default configuration routes all module fetches through the public proxy \(proxy.golang.org\) and checksum database \(sum.golang.org\), which do not have access to private code. Setting \`GOPRIVATE\` tells the go command to fetch the module directly from the source and skip the checksum database, securely resolving the issue. It works because \`GOPRIVATE\` simultaneously sets \`GONOSUMDB\` and \`GONOSUMCHECK\` for the specified patterns, providing a secure and complete bypass for private modules.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T11:24:13.505338+00:00— report_created — created