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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.