-
Notifications
You must be signed in to change notification settings - Fork 5.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Difficulty adding a Helm repository hosted by an ArgoCD managed instance of Harbor #4258
Comments
We know that cert propagation to the repo-server will take potentially minutes, because kubelet sync the changes to pods only periodically. Was sufficient time waited to verify the cert did not take affect? I would say 5 minutes would be sufficient. |
I retried this while waiting more than 5 minutes between each command: 16:01:12 > cat ~/cert_authority/cluster.crt | argocd cert add-tls "harbor.***" --insecure
Enter TLS certificate data in PEM format. Press CTRL-D when finished.
Created entry with 1 PEM certificates for repository server harbor.***
16:07:10 > argocd repo add "https://harbor.***" --name harbor --type \
helm --username *** --password *** --insecure-skip-server-verification
repository 'https://harbor.***' added
16:16:18 > argocd app sync cs-job-system
TIMESTAMP GROUP KIND NAMESPACE NAME STATUS HEALTH HOOK MESSAGE
Name: ***
Project: default
Server: https://kubernetes.default.svc
Namespace: ***
URL: http://localhost:9001/applications/***
Repo: git@***.git
Target: helm3
Path: apps/***
SyncWindow: Sync Allowed
Sync Policy: Automated (Prune)
Sync Status: Unknown
Health Status: Healthy
Operation: Sync
Sync Revision:
Phase: Error
Start: 2020-09-03 16:12:10 -0600 MDT
Finished: 2020-09-03 16:12:10 -0600 MDT
Duration: 0s
Message: ComparisonError: rpc error: code = Unknown desc = `helm dependency build` failed exit status 1: Error: could not find : chart *** not found in https://harbor.***
FATA[0001] Operation has completed with phase: Error It works once I do this: > repo_server=$(kubectl get pod -n argocd -l app.kubernetes.io/name=argocd-repo-server \
-o jsonpath="{.items[0].metadata.name}")
> kubectl exec -it -n argocd $repo_server -- helm repo add harbor \
"https://harbor.***" --username=*** \
--password=*** --insecure-skip-tls-verify \
--ca-file=/app/config/tls/harbor.*** |
Thanks we'll look into it |
@jessesuen Let me know if there is any other info I can provide. I'm able to reproduce this on demand, so I should be able to give any information you need. |
@jessesuen any news on this issue? we are hitting it as well. Helm repo works when manually adding inside the argo-repo-server container und using helm from the commandline there, but not through syncing with argo. Also happens with argo 1.7.9 |
I didn't get much further, but I think you might have been using the wrong helm URL. I have tried the command below and at least got it working. But then got stuck on another issue (OpenShift SCCs).
|
Checklist:
argocd version
.Describe the bug
One of the apps that I am managing with ArgoCD is Harbor. The Harbor instance hosts additional helm charts that are needed by other apps that ArgoCD will manage. Harbor stands up cleanly and I can pull from the helm repository using helm from the command line. However, when I add Harbor as a helm repository in ArgoCD:
then attempt to sync an application that depends on a chart that is hosted in Harbor's helm repository it fails with:
If I then exec into the
argocd-repo-server
pod and runhelm repo add
, the problem is fixed.What I'd really like to do
I'd really like to be able to add the repository declaratively so that I can get the CA certificate and Harbor's login info from secrets, but that doesn't work well since ArgoCD expects all of its repos to be available. Updating
argocd-cm
doesn't seem to have any effect once ArgoCD is initialized.To Reproduce
argocd repo add
andargocd cert add
.argocd app sync
.I can try to put together a repository for this if needed.
Expected behavior
ArgoCD will find the chart in Harbor and correctly deploy the application.
Screenshots
If applicable, add screenshots to help explain your problem.
Version
The text was updated successfully, but these errors were encountered: