Repository not found errors occur when ArgoCD cannot access the Git repository URL. Common causes include incorrect URLs, missing GitHub App authorization, Helm vs Git repository confusion, and missing repository credentials.
The "repository not found" error indicates that ArgoCD cannot locate or access the specified Git repository URL. This can happen with either public or private repositories and is usually caused by URL formatting issues, authentication problems, or application configuration mismatches.
Ensure the URL is correct and properly formatted:
- Git over HTTPS: https://github.com/owner/repo.git
- Git over SSH: [email protected]:owner/repo.git
- GitLab: https://gitlab.com/owner/repo.git
Test locally:
git clone <your-url>Some Git providers require the .git suffix. For GitLab, explicitly add it:
https://gitlab.com/owner/repo.gitGitLab may send a 301 redirect without the suffix that ArgoCD does not follow.
If your application is a Helm chart, use the chart property instead of path in your Application:
apiVersion: argoproj.io/v1alpha1
kind: Application
spec:
source:
repoURL: https://helm.example.com
chart: mychart
targetRevision: 1.0.0Instead of:
source:
repoURL: https://helm.example.com
path: mychartFor private GitHub repositories, the GitHub App must be authorized:
1. Go to your repository Settings > Installed GitHub Apps
2. Find the ArgoCD GitHub App
3. Click Authorize to grant repository access
4. Retry the repository connection in ArgoCD
Add repository credentials in ArgoCD before using a private repository:
argocd repo add https://github.com/private/repo \
--username your-username \
--password your-tokenCheck if ArgoCD can reach the repository host. From repo-server pod:
kubectl exec -it -n argocd deployment/argocd-repo-server -- \
curl -I https://github.com/owner/repoVerify that the path specified in your Application actually exists:
spec:
source:
path: k8s/overlays/prodThe directory must exist in the Git repository at that path.
Verify the repository can be accessed:
argocd repo test https://github.com/owner/repoThis will test if ArgoCD can connect to and access the repository.
For multi-repository setups, use repository credentials templates to avoid configuring the same credentials multiple times. When using private repositories at enterprise scale, consider using an external secrets operator to inject credentials dynamically. Test repository connectivity in your CI/CD pipeline before creating ArgoCD applications to catch issues early.
Failed to connect to server: connection refused (HTTP/2)
How to fix "HTTP/2 connection refused" error in Kubernetes
missing request for cpu in container
How to fix "missing request for cpu in container" in Kubernetes HPA
error: invalid configuration
How to fix "error: invalid configuration" in Kubernetes
etcdserver: cluster ID mismatch
How to fix "etcdserver: cluster ID mismatch" in Kubernetes
running with swap on is not supported
How to fix "running with swap on is not supported" in kubeadm