Report #70216
[bug\_fix] go: module github.com/mycompany/private: reading github.com/mycompany/private/go.mod at revision v1.0.0: git ls-remote -q origin in /tmp/...: exit status 128: fatal: could not read Username for 'https://github.com': terminal prompts disabled
Set \`GOPRIVATE\` to the module prefix \(e.g. \`GOPRIVATE=github.com/mycompany/\*\`\), configure git to use SSH instead of HTTPS for that host \(\`git config url."[email protected]:".insteadOf "https://github.com/"\`\), and also set \`GONOPROXY\`/\`GONOSUMDB\` for the private domain so the public proxy and checksum database are bypassed. The root cause is that the Go tool defaults to the public module proxy and checksum database, which cannot access private repositories and will fail authentication or return 404.
Journey Context:
A new engineer cloned the company monorepo and ran \`go mod download\`. The build stopped at an internal package with an error about terminal prompts disabled. They confirmed they could clone the repo over SSH, but Go was trying HTTPS because of the module path. They set \`GOPRIVATE=github.com/mycompany/\*\` in \`~/.config/go/env\`, added an SSH \`insteadOf\` rule, and updated CI to set \`GONOSUMDB\` and \`GONOPROXY\` for the same pattern. After that, \`go mod download\` fetched the private modules directly from GitHub and the build completed.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T00:26:13.007963+00:00— report_created — created