我正在使用带有 Subversion 插件的 Jenkins 1.417。当我尝试标记构建时,什么也没发生。没有消息,没有错误,没有创建标签。
所以,我的问题是 -当版本控制是 Subversion 时,如何在 Jenkins 中标记构建?
附加信息:
当我尝试在不提供凭据的情况下标记构建时,操作失败:
Tagging svn://dev-profiler/common/trunk (rev.65) to svn://dev-profiler/common/tags/Test-1
ERROR: Failed to tag
org.tmatesoft.svn.core.SVNCancelException: svn: 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:219)
at org.tmatesoft.svn.core.internal.io.svn.sasl.SVNSaslAuthenticator.createSaslClient(SVNSaslAuthenticator.java:304)
at org.tmatesoft.svn.core.internal.io.svn.sasl.SVNSaslAuthenticator.authenticate(SVNSaslAuthenticator.java:91)
at org.tmatesoft.svn.core.internal.io.svn.SVNConnection.authenticate(SVNConnection.java:173)
at org.tmatesoft.svn.core.internal.io.svn.SVNRepositoryImpl.authenticate(SVNRepositoryImpl.java:1265)
at org.tmatesoft.svn.core.internal.io.svn.SVNRepositoryImpl.getCommitEditorInternal(SVNRepositoryImpl.java:1572)
at org.tmatesoft.svn.core.io.SVNRepository.getCommitEditor(SVNRepository.java:2467)
at org.tmatesoft.svn.core.internal.wc.SVNCopyDriver.copyReposToRepos(SVNCopyDriver.java:368)
at org.tmatesoft.svn.core.internal.wc.SVNCopyDriver.setupCopy(SVNCopyDriver.java:628)
at org.tmatesoft.svn.core.wc.SVNCopyClient.doCopy(SVNCopyClient.java:426)
at hudson.scm.SubversionTagAction$TagWorkerThread.perform(SubversionTagAction.java:262)
at hudson.model.TaskThread.run(TaskThread.java:126)
Caused by: org.tmatesoft.svn.core.SVNErrorMessage: svn: No credential to try. Authentication failed
at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:200)
at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:146)
at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:89)
... 14 more
Completed
这很好,因为如果没有提供凭证,它就会失败。因此,负面路径按预期工作。
附言
描述了完全相同的问题这里以及jenkins 问题站点以及各自的 Google 群组.一切都无济于事。
聚苯硫醚
我意识到没有日志就什么也做不了,但必须知道记录器的名称才能激活它们并生成日志,而我不知道。如果有人向我提供记录器名称,我很乐意发布日志。
编辑
我激活了 hudson.scm 日志至全部级别。这里显示的内容如下:
03/07/2011 10:10:08 hudson.scm.SubversionSCM$DescriptorImpl$SVNAuthenticationProviderImpl fromProvider FINE: global.requestClientAuthentication(svn.simple,svn://dev-profiler/common,<svn://dev-profiler:3690> Temporary Shunra Repository)=>null
03/07/2011 10:10:08 hudson.scm.SubversionSCM$DescriptorImpl$RemotableSVNAuthenticationProviderImpl getCredential FINE: getCredential(<svn://dev-profiler:3690> Temporary Shunra Repository)=>null
03/07/2011 10:10:08 hudson.scm.SubversionSCM$DescriptorImpl$SVNAuthenticationProviderImpl fromProvider FINE: local.requestClientAuthentication(svn.simple,svn://dev-profiler/common,<svn://dev-profiler:3690> Temporary Shunra Repository)=>null
现在,当我尝试标记时,看到此错误:
ERROR: Failed to tag
org.tmatesoft.svn.core.SVNCancelException: svn: 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:219)
at org.tmatesoft.svn.core.internal.io.svn.sasl.SVNSaslAuthenticator.createSaslClient(SVNSaslAuthenticator.java:304)
at org.tmatesoft.svn.core.internal.io.svn.sasl.SVNSaslAuthenticator.authenticate(SVNSaslAuthenticator.java:91)
at org.tmatesoft.svn.core.internal.io.svn.SVNConnection.authenticate(SVNConnection.java:173)
at org.tmatesoft.svn.core.internal.io.svn.SVNRepositoryImpl.authenticate(SVNRepositoryImpl.java:1265)
at org.tmatesoft.svn.core.internal.io.svn.SVNRepositoryImpl.getCommitEditorInternal(SVNRepositoryImpl.java:1572)
at org.tmatesoft.svn.core.io.SVNRepository.getCommitEditor(SVNRepository.java:2467)
at org.tmatesoft.svn.core.internal.wc.SVNCopyDriver.copyReposToRepos(SVNCopyDriver.java:368)
at org.tmatesoft.svn.core.internal.wc.SVNCopyDriver.setupCopy(SVNCopyDriver.java:628)
at org.tmatesoft.svn.core.wc.SVNCopyClient.doCopy(SVNCopyClient.java:426)
at hudson.scm.SubversionTagAction$TagWorkerThread.perform(SubversionTagAction.java:262)
at hudson.model.TaskThread.run(TaskThread.java:126)
Caused by: org.tmatesoft.svn.core.SVNErrorMessage: svn: No credential to try. Authentication failed
at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:200)
at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:146)
at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:89)
... 14 more
Completed
这很奇怪,因为我确实提供了凭证……
答案1
您如何提供凭证?
我遇到了同样的问题,由于缺少/错误的凭证。我按照这一页其中描述了如何更改/设置 SVN 存储库的凭据。