-
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
Unable to connect to private helm OCI repo x509: certificate signed by unknown authority #7234
Comments
Someone in the slack channel had mentioned that this isn't a bug but instead I need to install the cert into /etc/ssl/certs via configmap or secret in argocd-server, but I'm struggling to find the documentation on how to do so. Any cert I install as a secret goes to /app/config/tls but does not get added to /etc/ssl/certs or /etc/ssl/certs/ca-certificates.crt. I followed This document Is there documentation on adding a self-signed certificate to /etc/ssl/certs for the argocd-server pod? |
Closing this as an environment issue. In case anyone finds this, the solution I found was to use a configMap to mount the self-signed certificate to /etc/ssl/certs on the argocd-server pod. I did this by patching the argocd-server deployment in the argocd provided install.yaml. Here is the patch.yaml I made to the Deployment
|
I disagree that this should be closed. The CA cert is configured in argo the way they document - but it doesn't apply to OCI repositories. This should be considered a bug. |
Using the snippets above, I had to mount the certificate on both argo-server and argo-repo-server before I was able to get an OCI repository to sync. |
If you are trying to resolve an environment-specific issue or have a one-off question about the edge case that does not require a feature then please consider asking a question in argocd slack channel.
Checklist:
argocd version
.Describe the bug
originally logged in #6599
ArgoCD is unable to connect to my private Harbor Helm OCI repository with self-signed certificate. It is able to connect to another non-OCI helm repository on the same harbor instance with the same certificate and credentials.
To Reproduce
exec into the argocd-server pod
k exec -it argocd-server-5cd74676dc-78w5n -n argocd -- /bin/bash
Verify the cert exists and has the correct data
cat /app/config/tls/oci.example.com
verify with openssl that the cert is valid when connecting to repo
openssl s_client -CAfile /app/config/tls/oci.example.com oci.example.com:443
Expected behavior
I would expect that somehow argocd-server would use the certificate installed at
/app/config/tls/oci.example.com
when runninghelm registry login
. Since there is no--ca-file
option for helm registry login, the way I have achieved this in my local environment is to add the self-signed certificate to/etc/ssl/certs
. I don't see a way to do this with argocd-server. Should argocd-server be installing the certificate to/etc/ssl/certs
?More Info
For reference, I have my self-signed ca cert installed properly per the documentation
Version
Logs
Output from `argocd repo add oci.example.com/chartrepo/test --type helm --name test --enable-oci --username username
The text was updated successfully, but these errors were encountered: