我的Jenkins安装有一个(奇怪的)问题,基本上会导致SVN更新失败。
堆栈跟踪显示两个问题:
hudson.util.IOException2: revision check failed on (my repo)....
和
Caused by: org.tmatesoft.svn.core.SVNException: svn: OPTIONS (my repo)
如果在发生这种情况后重新运行构建,一切正常。
标记
由具有完全相同问题的ganders编辑:
这是我机器上的堆栈跟踪导致此错误。它似乎在尝试访问SVNExternals目录(... / trunk / common)时出现,并且由于某种原因它在第一次尝试访问时没有凭据。然后下一次,它运作得很好:
hudson.util.IOException2:修订检查失败 https://myserver.com/....../TrialsMobile/trunk/common at hudson.scm.SubversionChangeLogBuilder.buildModule(SubversionChangeLogBuilder.java:189) 在 hudson.scm.SubversionChangeLogBuilder.run(SubversionChangeLogBuilder.java:132) 在hudson.scm.SubversionSCM.calcChangeLog(SubversionSCM.java:738)at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:899)at hudson.model.AbstractProject.checkout(AbstractProject.java:1414)at hudson.model.AbstractBuild $ AbstractBuildExecution.defaultCheckout(AbstractBuild.java:671) 在 jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88) 在 hudson.model.AbstractBuild $ AbstractBuildExecution.run(AbstractBuild.java:580) 在hudson.model.Run.execute(Run.java:1676)at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)at at hudson.model.ResourceController.execute(ResourceController.java:88) 在hudson.model.Executor.run(Executor.java:231)引起: org.tmatesoft.svn.core.SVNCancelException:svn:E200015:OPTIONS / svn / mobilena / ios / TrialsMobile / trunk / common失败了 org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:384) 在 org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:373) 在 org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:361) 在 org.tmatesoft.svn.core.internal.io.dav.DAVConnection.performHttpRequest(DAVConnection.java:707) 在 org.tmatesoft.svn.core.internal.io.dav.DAVConnection.exchangeCapabilities(DAVConnection.java:627) 在 org.tmatesoft.svn.core.internal.io.dav.DAVConnection.open(DAVConnection.java:102) 在 org.tmatesoft.svn.core.internal.io.dav.DAVRepository.openConnection(DAVRepository.java:1020) 在 org.tmatesoft.svn.core.internal.io.dav.DAVRepository.getLatestRevision(DAVRepository.java:180) 在 org.tmatesoft.svn.core.internal.wc2.ng.SvnNgRepositoryAccess.getRevisionNumber(SvnNgRepositoryAccess.java:118) 在 org.tmatesoft.svn.core.internal.wc2.SvnRepositoryAccess.getLocations(SvnRepositoryAccess.java:148) 在 org.tmatesoft.svn.core.internal.wc2.ng.SvnNgRepositoryAccess.createRepositoryFor(SvnNgRepositoryAccess.java:45) 在 org.tmatesoft.svn.core.internal.wc2.remote.SvnRemoteLog.run(SvnRemoteLog.java:160) 在 org.tmatesoft.svn.core.internal.wc2.remote.SvnRemoteLog.run(SvnRemoteLog.java:35) 在 org.tmatesoft.svn.core.internal.wc2.SvnOperationRunner.run(SvnOperationRunner.java:20) 在 org.tmatesoft.svn.core.wc2.SvnOperationFactory.run(SvnOperationFactory.java:1238) 在org.tmatesoft.svn.core.wc2.SvnOperation.run(SvnOperation.java:294) 在 org.tmatesoft.svn.core.wc.SVNLogClient.doLog(SVNLogClient.java:967) 在 org.tmatesoft.svn.core.wc.SVNLogClient.doLog(SVNLogClient.java:872) 在 hudson.scm.SubversionChangeLogBuilder.buildModule(SubversionChangeLogBuilder.java:177) ... 11更多引起:org.tmatesoft.svn.core.SVNCancelException: svn:E200015:没有凭据可以尝试。身份验证失败了 org.tmatesoft.svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:37) 在 org.tmatesoft.svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:32) 在 org.tmatesoft.svn.core.internal.wc.DefaultSVNAuthenticationManager.getFirstAuthentication(DefaultSVNAuthenticationManager.java:185) 在 org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:694) 在 org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:382) ... 29更多
答案 0 :(得分:1)
你不是唯一一个with this issue。
看起来你的构建工作原因是因为这发生在修订检查上(我是否需要构建?),以及重建时按 Build Now 按钮,它工作正常。让我们尝试一些事情:
看起来在2.0版的Jenkins SVN插件中引入了错误 功能 ,这改变了身份验证的方式在外部完成。添加惊喜功能是程序员社区死亡的主要原因。
答案 1 :(得分:0)
这些错误行都没有对这个问题有所了解。如果您可以获取svn日志,请发布它们。
如果交替失败,则是访问问题,也许您有权读取但不能写入回购,或者系统的某个部分有错误的用户名/密码。也许你在jenkins配置的一部分输入了svn url的拼写错误。这样的东西是我先看的地方。
答案 2 :(得分:-2)
错误来自SVN。因此,您可以尝试在SVN中创建新目录。您也可以尝试使用IP而不是主机名。如果您可以尝试,请与网络专家保持一致。