-
Notifications
You must be signed in to change notification settings - Fork 5.6k
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
no matching key exchange method found #6812
Comments
Please try removing path from repo url. Path should be specified in app spec
|
Path in the URL is the root of the git repo, I was following this convention in the argocd repo add examples (without the insecure flag):
Tried it, got the following failure:
|
I see that this was tagged as "works for me". To confirm @alexmt , you successfully connected argocd-server to a git repo that only offers diffie-hellman-group1-sha1 and/or diffie-hellman-group14-sha1 Kex Algorithms? |
hello @rogfut , Looks like I changed labels too quickly - adding bug label again. I assumed that error happens due to path in the repo URL but did not validate that Argo CD works with diffie-hellman-group1-sha1 and/or diffie-hellman-group14-sha1 Kex Algorithms. I think you are correct that there is an issue, sorry for the confusion. |
I had to do an horrible and insecure workaround because the repository is a TFS 2018 and only supports diffie-hellman-group1-sha1 and/or diffie-hellman-group14-sha1, so, the solution was to create a Config Map to enable that
Then mount the volume in the argo-repo-server Deployment
DO IT AT YOUR OWN RISK |
As an Addition to...
Just the KexAlgorithms did not worked for me. So, the workaround until Azure DevOps does not fix their known_hosts ssh key is:
apiVersion: v1
kind: ConfigMap
metadata:
name: argocd-ssh-legacy-cm
namespace: argo
data:
ssh_legacy.conf: |-
KexAlgorithms +diffie-hellman-group1-sha1,diffie-hellman-group14-sha1
Host ssh.dev.azure.com
User git
PubkeyAcceptedAlgorithms +ssh-rsa
HostkeyAlgorithms +ssh-rsa
volumes:
- name: ssh-legacy
configMap:
name: argocd-ssh-legacy-cm
defaultMode: 420
volumeMounts:
- name: ssh-legacy
mountPath: /etc/ssh/ssh_config.d |
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
When argocd runs git fetch from a private repo that uses diffie-hellman-group1-sha1 and/or diffie-hellman-group14-sha1, git fetch fails with
no matching key exchange method found
Related to issue 6209
Seems like this should have been fixed with this commit
To Reproduce
argocd repo add git@myrepo.example.com:some/path/_git/myproject --ssh-private-key-path /home/roger/.ssh/myrepo
Expected behavior
I would expect commit 4accaa54004b746abc4fe05ef840bfe58ebdffc6 would have fixed the issue by adding diffie-hellman-group1-sha1 and diffie-hellman-group14-sha1 on lines 14 and 15 of util/git/ssh.go
Version
Logs
The text was updated successfully, but these errors were encountered: