It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Crucible - integration with GitHub using ssh keys.

Marcin Słaboński Apr 30, 2015

Hi,

I'm trying to establish secure connection between Crucible (standalone instance) and GitHub repository using ssh key. When repository was configured to use https connection all was working just fine, but when I switch git authentication to ssh key, test of the connectivity returns error:

Error testing connection.
Error talking to repository: 

Permission denied (publickey). 
fatal: The remote end hung up unexpectedly

at com.atlassian.fisheye.git.GitScmConfig.testConnection(GitScmConfig.java:148)
at com.cenqua.fisheye.RepositoryConfig.testConnection(RepositoryConfig.java:441)
at com.atlassian.fisheye.spi.admin.impl.DefaultRepositoryAdminService.testConnectionFor(DefaultRepositoryAdminService.java:682)
at sun.reflect.GeneratedMethodAccessor8112.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
Connection failed.

Steps that was made:

  1. Existing repository was chosen (test_repo).
  2. In tab SCM Details:
    1. Repository location changed from 'https://username@github.com/company/test_repo.git'
      to 'ssh://username@github.com/company/test_repo.git'.

    2. Git authentication style changed from 'Password for http(s)' to 'Generate key par for ssh'.
    3. Ssh keys was generated.
    4. Public key was copied in to Personal settings -> SSH keys on GitHub account.
    5. Checkout URL was changed from 'https://username/@github.com/company/test_repo.git' to 'ssh://username@github.com/company/test_repo.git'
    6. Connections was tested.

As I mentioned earlier, test connection returns error. My question is this type authorizations is possible, and if it is, is there any description or guide how to do that? Where private key that was generated by Crucible are stored? Ho I can test manually connectivity?

 

2 answers

1 accepted

1 vote
Answer accepted
Lukasz Pater Atlassian Team May 04, 2015

Hi Marcin,

this should work as you'd expect.

Please verify the url for the repository is the correct one, exactly as visible on the github page.

Github ssh repository urls have the format of 'git@github.com:organization/repository.git' - note no 'ssh://' prefix nor username present in the url.

If the url is correct, you could also do a check using

ssh -T -i path-to-private-key git@github.com

The keyfile fisheye uses for a given repository is stored in FISHEYE_INST/data/auth/repositoryname. This command should result in something like:

Hi username! You've successfully authenticated, but GitHub does not provide shell access.

if the key is recoginzed, and:

Permission denied (publickey).

otherwise.

0 votes
Marcin Słaboński May 06, 2015

Hi @Lukasz Pater,

Firstly, I want to thank you for a help, your advice was 100% accurate. 
To setup this connection I was using documentation from this link: https://confluence.atlassian.com/display/FISHEYE034/Authentication
In the paragraph called 'Generate key pair for SSH' there is example of the repository location: ssh://test@example.com/repo. This is little a bit confusing because I was thinking that ssh:// prefix is mandatory.
I have suggestion to add in to mentioned documentation some example of GitHub repository configuration with repository location in format that you wrote.
Thanks again!

Suggest an answer

Log in or Sign up to answer
This widget could not be displayed.
This widget could not be displayed.
Community showcase
Published in Next-gen

Introducing subtasks for breaking down work in next-gen projects

Teams break work down in order to help simplify complex tasks. This is often done iteratively, with tasks being broken down into smaller tasks and so on until the work is accurately captured in well-...

1,175 views 13 15
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you