我已将jenkins的Subversion插件更新为2.2版
现在我得到了关于repos的错误,这是在升级之后第一次构建的repos以及repos,其中外部的东西发生了变化。它可以按预期用于所有其他构建。
我尝试添加其他凭据,但这没有帮助。
现在我希望有人知道还有什么可以尝试来解决这个尴尬的问题。
错误:
hudson.util.IOException2: revision check failed on http://XXX/svn/XXX/Website/Config/trunk
at hudson.scm.SubversionChangeLogBuilder.buildModule(SubversionChangeLogBuilder.java:189)
at hudson.scm.SubversionChangeLogBuilder.run(SubversionChangeLogBuilder.java:132)
at hudson.scm.SubversionSCM.calcChangeLog(SubversionSCM.java:738)
at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:899)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1411)
at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:671)
at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:580)
at hudson.model.Run.execute(Run.java:1670)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:231)
Caused by: org.tmatesoft.svn.core.SVNCancelException: svn: E200015: OPTIONS /svn/XXX/Website/Config/trunk failed
at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:384)
at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:373)
at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:361)
at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.performHttpRequest(DAVConnection.java:707)
at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.exchangeCapabilities(DAVConnection.java:627)
at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.open(DAVConnection.java:102)
at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.openConnection(DAVRepository.java:1020)
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:1238)
at org.tmatesoft.svn.core.wc2.SvnOperation.run(SvnOperation.java:294)
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:177)
... 11 more
Caused by: org.tmatesoft.svn.core.SVNCancelException: svn: E200015: No credential to try. Authentication failed
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.getFirstAuthentication(DefaultSVNAuthenticationManager.java:185)
at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:694)
at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:382)
... 29 more
答案 0 :(得分:22)
在对官方错误report发表许多评论后,我们能够解决这个问题。
为了让它工作,你必须更新到subversion插件的最新2.3-snaptshot, 可以在这里找到:
https://jenkins.ci.cloudbees.com/job/plugins/job/subversion-plugin/
(下载.hpi文件并将其安装在您的jenkins上)
<prot://ip:port > Company Subversion Repository
)svn --username {username} --password {password} checkout prot://ip:port/svn/repo
&lt; - 您可以在结帐后取消此操作find ~/.subversion/auth/svn.simple/ -type f -exec cat {} + | grep -A 2 realmstring
buildmaster/****** (<prot://ip:port> Company Subversion Repository)
注意:如果您使用 svn + ssh ,您的领域将看起来像&#34; svn + ssh:// server-name&#34;没有双引号。不需要尖括号,端口或域名。
答案 1 :(得分:3)
我有同样的错误。由于svn repo受密码保护。当我添加凭证并将其用于svn签出时,它工作正常。
答案 2 :(得分:1)
我得到了完全相同的异常,这是因为在存储库路径中使用了构建参数,例如:
http://reposerver/svn/project/${SVN_BRANCH}
即使万一$ {SVN_BRANCH}被正确设置为'trunk'它也无法正常工作
当我将存储库路径更改为:
时http://reposerver/svn/project/trunk
现在一切正常
将svn插件从1.54升级到2.2后发生此问题,所以看起来新版本的svn jenkins插件中存在一些错误
答案 3 :(得分:1)
我想强调mikepenz' answer:中的一点 在您的工作配置的文本字段 Realm 中(单击添加其他凭据... 之后),您不能只输入您的SVN领域,而是您的领域和外部仓库的完整网址。这使我绊倒了。
因此,这部分工作配置最终看起来像这样:
修改强>:
事实证明,上述情况并没有改善这种情况:凭证错误仍然存在,而且提交到外部存储库并没有触发Jenkins构建软件。
我遵循了建议here(也提到了上述方法的安全问题),并在Jenkins中使用模块作为我的外部存储库。
这是我的模块配置查找外部仓库的方式:
答案 4 :(得分:-1)
更新subversion插件时,您应该执行以下操作之一。
或