Report #25251
[bug\_fix] GCP DefaultCredentialsError: Could not automatically determine credentials
Run \`gcloud auth application-default login\` to generate application default credentials \(ADC\), or set the \`GOOGLE\_APPLICATION\_CREDENTIALS\` environment variable to point to a service account key JSON file. The root cause is that Google Cloud client libraries use a credentials hierarchy: first checking the env var, then metadata server \(if on GCP\), then local ADC file. Local development environments lack the metadata server, so without explicit configuration, the chain fails.
Journey Context:
Developer runs a Python script using \`google-cloud-storage\` on their laptop. Gets "DefaultCredentialsError". Assumes it's looking for a service account key. Creates a new service account in GCP console, downloads JSON key, sets \`GOOGLE\_APPLICATION\_CREDENTIALS\`. It works but they wonder why \`gcloud\` CLI commands work without this env var. Discovers that \`gcloud\` uses its own auth \(user credentials\), not ADC. Learns that \`gcloud auth application-default login\` creates \`~/.config/gcloud/application\_default\_credentials.json\` which the client libraries automatically pick up. Switches to using ADC instead of service account keys for local dev to avoid key management.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T20:47:34.732815+00:00— report_created — created