Can't Index Subversion Repository Due to Error, 'Server SSL ceritificate for SVN_URL cannot be saved'
Symptoms
When indexing a Subversion repository using https://
the following error is visible in the logs:
2009-10-07 00:15:41,724 WARN [InitialPinger1] fisheye.app com.cenqua.fisheye.svn.SvnRepositoryTester-getServerRootURL - Unable to get info for the repository root
com.cenqua.fisheye.rep.RepositoryClientException: org.tigris.subversion.javahl.ClientException: svn: Server SSL ceritificate for 'https://SVN_URL:443' cannot be saved
at com.cenqua.fisheye.svn.SvnThrottledClient.info2(SvnThrottledClient.java:108)
at com.cenqua.fisheye.svn.SvnRepositoryTester.getServerRootURL(SvnRepositoryTester.java:89)
at com.cenqua.fisheye.svn.SvnRepositoryTester.checkRepoSettings(SvnRepositoryTester.java:72)
at com.cenqua.fisheye.svn.SvnRepositoryScanner.checkRepoSettings(SvnRepositoryScanner.java:348)
at com.cenqua.fisheye.svn.SvnRepositoryScanner.validateRepo(SvnRepositoryScanner.java:261)
at com.cenqua.fisheye.rep.RepositoryScanner.startRepo(RepositoryScanner.java:223)
at com.cenqua.fisheye.rep.RepositoryScanner.slurp(RepositoryScanner.java:153)
at com.cenqua.fisheye.rep.RepositoryScanner.ping(RepositoryScanner.java:121)
...
Caused by: org.tigris.subversion.javahl.ClientException: svn: Server SSL ceritificate for 'https://SVN_URL:443' cannot be saved
at org.tigris.subversion.javahl.JavaHLObjectFactory.throwException(JavaHLObjectFactory.java:777)
at org.tmatesoft.svn.core.javahl.SVNClientImpl.throwException(SVNClientImpl.java:1850)
...
... 17 more
Caused by: org.tmatesoft.svn.core.SVNCancelException: svn: Server SSL ceritificate for 'https://SVN_URL:443' cannot be saved
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:37)
at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:32)
...
Cause
The Fisheye user needs to have a home directory or some place to write the .subversion
files for authentication (see SVN Configuration Area Layout).
Resolution
Create the home directory for the Fisheye user. Run the following command on the command line:
svn info https://SVN_URL:443
Supply the username and password provided in Fisheye and verify if the returned output is as expected.
Alternatively, you can use svnsync to mirror the repository onto the server where Fisheye is located and then access the mirrored repository using file://
protocol which is much faster than https://
(see Tuning Fisheye).