Hi all,

I am still struggling to get any kind of sensible behaviour out of the 
Subversion plugin when used with client certificates.

When you set the project up to be built, the configure screen complains as 
follows:

"Unable to access [URL] : svn: E175002: OPTIONS [PATH] failed (show details)
(Maybe you need to enter credential?)"

Despite the error above, when "build now" is selected, the project builds 
fine without a problem.

However, when the project is built from a "poll", either driven by a 
scheduled poll, or triggered by a commit hook, the subversion plugin fails 
again like so:

Started by an SCM change
Building remotely on [HOST] in workspace 
/home/jenkins-ci-slave/workspace/workspace/[PATH]
Unable to auto-install JDK until the license is accepted.
Updating [URL] at revision '2013-02-09T21:21:57.798 +0000'
U         pom.xml
At revision 381
hudson.util.IOException2: revision check failed on [URL]
    at 
hudson.scm.SubversionChangeLogBuilder.buildModule(SubversionChangeLogBuilder.java:178)
    at 
hudson.scm.SubversionChangeLogBuilder.run(SubversionChangeLogBuilder.java:113)
    at hudson.scm.SubversionSCM.calcChangeLog(SubversionSCM.java:649)
    at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:810)
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1331)
    at 
hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:682)
    at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88)
    at 
hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:587)
    at hudson.model.Run.execute(Run.java:1557)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
    at hudson.model.Executor.run(Executor.java:236)
Caused by: org.tmatesoft.svn.core.SVNException: svn: E175002: OPTIONS 
[PATH] failed
    at 
org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:379)
    at 
org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:364)
    at 
org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:352)
    at 
org.tmatesoft.svn.core.internal.io.dav.DAVConnection.performHttpRequest(DAVConnection.java:708)
    at 
org.tmatesoft.svn.core.internal.io.dav.DAVConnection.exchangeCapabilities(DAVConnection.java:628)
    at 
org.tmatesoft.svn.core.internal.io.dav.DAVConnection.open(DAVConnection.java:103)
    at 
org.tmatesoft.svn.core.internal.io.dav.DAVRepository.openConnection(DAVRepository.java:1018)
    at 
org.tmatesoft.svn.core.internal.io.dav.DAVRepository.getLatestRevision(DAVRepository.java:180)
    at 
org.tmatesoft.svn.core.internal.wc2.ng.SvnNgRepositoryAccess.getRevisionNumber(SvnNgRepositoryAccess.java:118)
    at 
org.tmatesoft.svn.core.internal.wc2.SvnRepositoryAccess.getLocations(SvnRepositoryAccess.java:148)
    at 
org.tmatesoft.svn.core.internal.wc2.ng.SvnNgRepositoryAccess.createRepositoryFor(SvnNgRepositoryAccess.java:45)
    at 
org.tmatesoft.svn.core.internal.wc2.remote.SvnRemoteLog.run(SvnRemoteLog.java:160)
    at 
org.tmatesoft.svn.core.internal.wc2.remote.SvnRemoteLog.run(SvnRemoteLog.java:35)
    at 
org.tmatesoft.svn.core.internal.wc2.SvnOperationRunner.run(SvnOperationRunner.java:20)
    at 
org.tmatesoft.svn.core.wc2.SvnOperationFactory.run(SvnOperationFactory.java:1235)
    at org.tmatesoft.svn.core.wc2.SvnOperation.run(SvnOperation.java:291)
    at org.tmatesoft.svn.core.wc.SVNLogClient.doLog(SVNLogClient.java:967)
    at org.tmatesoft.svn.core.wc.SVNLogClient.doLog(SVNLogClient.java:872)
    at 
hudson.scm.SubversionChangeLogBuilder.buildModule(SubversionChangeLogBuilder.java:166)
    ... 11 more
Caused by: svn: E175002: OPTIONS [PATH] failed
    at 
org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:208)
    at 
org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:154)
    at 
org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:97)
    ... 30 more
Caused by: org.tmatesoft.svn.core.SVNException: svn: E175002: OPTIONS 
request failed on '[PATH]'
svn: E175002: Remote host closed connection during handshake
    at 
org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:64)
    at 
org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:51)
    at 
org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:754)
    at 
org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:373)
    ... 29 more
Caused by: svn: E175002: OPTIONS request failed on '[PATH]'
    at 
org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:208)
    at 
org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:752)
    ... 30 more
Caused by: svn: E175002: Remote host closed connection during handshake
    at 
org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:109)
    at 
org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:488)
    ... 30 more
Caused by: javax.net.ssl.SSLHandshakeException: Remote host closed 
connection during handshake
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:869)
    at 
sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1190)
    at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:657)
    at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:108)
    at 
java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
    at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
    at 
org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.sendData(HTTPConnection.java:313)
    at 
org.tmatesoft.svn.core.internal.io.dav.http.HTTPRequest.dispatch(HTTPRequest.java:168)
    at 
org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:460)
    ... 30 more
Caused by: java.io.EOFException: SSL peer shut down incorrectly
    at sun.security.ssl.InputRecord.read(InputRecord.java:352)
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:850)
    ... 38 more
Unable to auto-install JDK until the license is accepted.
Sending e-mails to: [EMAIL]
Finished: FAILURE

It looks like the subversion plugin is broken with respect to providing 
credentials - on a forced build, the plugin seems to ignore credentials and 
revert to those in .subversion/servers (the desired behaviour). On polled 
builds, the plugin successfully does an update but then somehow overrides 
svnkit and tells it to provide no client certificate at all, and the remote 
server slams the phone down. Even when a valid P12 file is uploaded using 
the UI, it makes no difference, the credentials remain ignored, and the 
connection fails.

Has anybody got the subversion plugin to work with client certificates?

My first prize behaviour is for Jenkins to not fiddle with authentication 
at all, and simply leave it up to the subversion configuration for the 
account. This is configured correctly, and the native subversion client 
works fine.

Is there a way to get the subversion plugin to just use the native svn 
binary and not fiddle with authentication at all?

Regards,
Graham
--

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to