Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 359530 - Buckminster materialization from a git repository does not prompt for SSH key passphrase when requires, but fails
Summary: Buckminster materialization from a git repository does not prompt for SSH key...
Status: NEW
Alias: None
Product: EGit
Classification: Technology
Component: Core (show other bugs)
Version: unspecified   Edit
Hardware: PC All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-09-30 04:23 EDT by Matthew Webber CLA
Modified: 2011-09-30 11:04 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matthew Webber CLA 2011-09-30 04:23:37 EDT
Build Identifier: Version: Indigo Service Release 1 Build id: 20110916-0149

I'm using Buckminster to check out from a remote Git repository. Access is managed by SSH keypair.

If I have a passphrase (note: this is different from a password) on my SSH private key, then materialisation fails immediately  with:

Cloning remote repository ssh://dascgitolite@dasc-git-dev.<removed>/training/bmn54829/workflow.master.git into /scratch/training_ide_git/training/bmn54829/workflow.master.git
ERROR [0001] : org.eclipse.jgit.api.errors.JGitInternalException: Exception caught during execution of fetch command
Errors and Warnings
E [0001] : org.eclipse.jgit.api.errors.JGitInternalException: Exception caught during execution of fetch command: Exception caught during execution of fetch command
TAG-ID 0001 = Query for workflow.master.feature:eclipse.feature

Note that there is no prompt for my passphrase.

If I then remove the passphrase from my private key, and restart Eclipse, then my CQuery materialises just fine. So the problem is the presence of the passphrase.

We have now discovered that if the "Git Repositories" view is open, the Buckminster materialize prompts for the passphrase and works fine. In fact, if you open the ""Git Repositories" view and then close it, the Buckminster materialize still prompts for the passphrase and works fine.

I guess that there is some initialization that EGit does, which doesn't happen until the view is opened. Either Buckminster needs to make sure that EGit is properly initialized before requested it to do something, or else EGit needs to make sure that it has initialized before performs services on behalf of Buckminster.



Reproducible: Always
Comment 1 Thomas Hallgren CLA 2011-09-30 04:37:10 EDT
Seems like an egit initialization problem. My guess is that the egit UI bundle registers the UI components needed for querying the user about the passphrase. Buckminster has no dependency on this bundle (for good reasons) so we don't activate it.

I think it's up to egit to detect and activate the egit UI so I'll defer this to the egit project.