Skip to content
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

ssh pinentry dialog unusable due to ssh-add exec timeout #1546

Open
MartinLoeper opened this issue Jan 12, 2025 · 1 comment
Open

ssh pinentry dialog unusable due to ssh-add exec timeout #1546

MartinLoeper opened this issue Jan 12, 2025 · 1 comment
Labels

Comments

@MartinLoeper
Copy link

What happened?

I am running ssh agent via gpg. As I found out in a provider repository, there is an issue with this setup as soon as the AddPrivateKeysToAgent(ctx context.Context, log log.Logger) error method is called. The method has a timeout of 2s by default which is not nearly enough to input a passphase for the ssh-add command.

I would like to provide a PR here, but I do not know what the best solution is.

What did you expect to happen instead?

I expect that devpod lets me input the information that ssh-add needs to add the key (e.g. pin for the gpg smartcard or ssh key passphrase). Currently, the dialog spawned by Gnome pinentry is just closed after the 2s timeout.

How can we reproduce the bug? (as minimally and precisely as possible)

  • Install devpod
  • Enable the ssh integration for gpg
  • Run a provider which calls ExecuteCommand in the ssh package.

Local Environment:

  • DevPod Version: v0.5.20
  • Operating System: linux (NixOS)
  • ARCH of the OS: AMD64

DevPod Provider:

  • Cloud Provider: hetzner
  • Kubernetes Provider: not applicable
  • Local/remote provider: docker
  • Custom provider: hetzner

Anything else we need to know?

@pascalbreuninger
Copy link
Member

Hey @MartinLoeper, thanks for opening this issue.
I am personally not familiar with pinentry so I've just added support for passphrase based SSH keys.
Is it possible for you to check out the linked PR and see if this also works for your setup before we merge it into main?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants