crucible svn url cannot handle svn+ssh

In Crucible I want to add a SVN repo with the svn+ssh URL syntax. For  example:

svn+ssh://user@myhost.example.com/repo/trunk

The error I'm getting is:

Unable to get info for the repository root for proj1
svn: E200015: authentication cancelled
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:37)
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:32)
at
 
org.tmatesoft.svn.core.internal.wc.DefaultSVNAuthenticationManager.getNextAuthentication(DefaultSVNAuthenticationManager.java:215)
at org.tmatesoft.svn.core.internal.io.svn.SVNSSHConnector.open(SVNSSHConnector.java:140)
at org.tmatesoft.svn.core.internal.io.svn.SVNConnection.open(SVNConnection.java:77)
Unable to get Repository Root URL for proj1:svn+ssh://user@myhost.example.com/repo/trunk/sources/proj
Exception getting FishEye access control
svn: E200015: authentication cancelled
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:37)
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:32)
at org.tmatesoft.svn.core.internal.wc.DefaultSVNAuthenticationManager.getNextAuthentication(DefaultSVNAuthenticationManager.java:215)
at org.tmatesoft.svn.core.internal.io.svn.SVNSSHConnector.open(SVNSSHConnector.java:140)
at org.tmatesoft.svn.core.internal.io.svn.SVNConnection.open(SVNConnection.java:77)
Error testing connection.
svn: E200015: authentication cancelled
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:37)
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:32)
at
 
org.tmatesoft.svn.core.internal.wc.DefaultSVNAuthenticationManager.getNextAuthentication(DefaultSVNAuthenticationManager.java:215)
at org.tmatesoft.svn.core.internal.io.svn.SVNSSHConnector.open(SVNSSHConnector.java:140)
at org.tmatesoft.svn.core.internal.io.svn.SVNConnection.open(SVNConnection.java:77)
Connection failed.

 

If I run the SVN commands from a shell (same user that runs the crucible webserver) I don't get any error. So the authentication is correct.
Where do I go from here?

3 answers

OK, I've installed libsvn-java (Ubuntu) and now it can connect just fine.

I followed the installation instruction from https://confluence.atlassian.com/display/FISHEYE/Native+Subversion+Client

0 votes

Please note FishEye does not use SVN executable to communicate with remote SVN repository.  Instead, depending on your configuration (see https://confluence.atlassian.com/display/FISHEYE/Native+Subversion+Client) it uses SVNKit library or native libraries.

Can you check connectivity in the repository admin screen (Admin / Repositories) by clicking "Test Connection" please?  Review authentication settings of your repository if it fails.

You can also try using bundled jsvn command line tool to verify credentials, see https://confluence.atlassian.com/display/FISHKB/Analyzing+Subversion+Connectivity+Issues+With+JSVN

Hope that helps,
Piotr 

Thanks Piotr.

My configuration says:

   The bundled Subversion client, SVNKit, is being used for Subversion operations.

   The JavaHL client version is SVNKit v1.8.6.t20140430_1645.

 

The message that I showed in the question above are from "Test connection".

 

Thanks for pointing to SVNKit. If I run from the command line (jsvn) I can see that it persists to have a username/password. But I only have a user and an SSH key, there is no password.

$ sh lib/svn/jsvn --non-interactive info svn+ssh://...
svn: E170001: Authentication required for '...'

Doing the same thing with the actual (native?) SVN commands I have no problem.

 

So, SVNKit gets in my way. I don't see how I can persuade it to accept the svn+ssh URL without giving a password.

How do I tell Crucible/FishEye to use the SVN commands? (( BTW. I am confused about what FishEye means by "native". ))

When you run svn client locally on that machine, do you use the same user as the one that FishEye is run on? Perhaps the problem is that the user is different, so it uses different svn configuration? See the https://confluence.atlassian.com/display/FISHKB/Cannot+Access+SVN+Repository+Over+SSH+Due+to+Error+-+svn+authentication+cancelled page - it is possible to use private key authentication when accessing svn repositories over svn+ssh protocol. Usually all required configuration would be read from svn configuration, but you can use system properties to specify exact location of key file etc.

Suggest an answer

Log in or Sign up to answer
Community showcase
Published yesterday in Jira Ops

Jira Ops Early Access Program Update #2: Let’s talk severity levels

Welcome to your weekly Jira Ops Early access program update, where we’re sharing news and updates on Jira Ops' progress as we work toward our 1.0 release. If you ever want to drop us feedback or idea...

36 views 0 0
Read article

Atlassian User Groups

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

Find a group

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

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you