velero: invalid configuration: no configuration has been provided
Routes velero CLI kubeconfig failures. Use when velero commands fail with invalid configuration: no configuration has been provided. Not for server-side credential errors.
The velero CLI can not find any kubeconfig - it checks --kubeconfig, then $KUBECONFIG, then ~/.kube/config, and found nothing. This is the client failing before it ever talks to the cluster. Point it at a real config (export KUBECONFIG or --kubeconfig) and the command works.
The error
invalid configuration: no configuration has been providedWhat to do
- Check the resolution chain:
echo "KUBECONFIG=$KUBECONFIG"
ls -la ~/.kube/configExpected: Shows nothing resolvable.
- Point at the real config:
export KUBECONFIG=/path/to/config
velero backup getExpected: Command works.
- Or pass it per invocation:
velero --kubeconfig /path/to/config backup getExpected: Same result without the env var.
When this applies
- the exact invalid configuration: no configuration has been provided message
- fresh machines, CI runners, containers without kubeconfig
- sudo dropping KUBECONFIG
When it does NOT apply
- NoCredentialProviders (server-side cloud credentials, different fix)
- backups stuck in New (server not running)
Works with
velero CLI 1.x
kubectl failing the same way on the same machine
Same missing file. Fix it once and both CLIs work.
Why it happens
The velero CLI is a Kubernetes client like kubectl and resolves its config the same way. With no file anywhere in the chain, client construction fails before any API call.
Edge cases
- In-cluster, the velero server uses a ServiceAccount, not a kubeconfig - this error is CLI-only.
- KUBECONFIG with a typo'd path fails the same way; the chain does not warn which entry was wrong.
Resolved from
gh:aliyuncontainerservice/velero (debugging-install) - https://github.com/aliyuncontainerservice/velero/blob/HEAD/site/docs/master/debugging-install.md