gpt4 book ai didi

svn - 我们可以告诉 CruiseControl.NET 忽略源代码控制超时错误吗?

转载 作者:行者123 更新时间:2023-12-04 02:51:24 27 4
gpt4 key购买 nike

我们设置了 CruiseControl.NET 来对我们的许多项目进行持续集成。

我们正在使用 <cb:define>块以确保我们所有的源代码控制操作都以相同的方式完成,并保持配置干燥。

我们每隔一段时间就会遇到一个问题,导致构建显示“异常”。消息如下:

ThoughtWorks.CruiseControl.Core.CruiseControlException: Source control operation has timed out. 
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.ProcessSourceControl.Execute(ProcessInfo processInfo)
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.Svn.GetModifications(IIntegrationResult from, IIntegrationResult to)
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.QuietPeriod.GetModifications(ISourceControl sourceControl, IIntegrationResult lastBuild, IIntegrationResult thisBuild)
at ThoughtWorks.CruiseControl.Core.IntegrationRunner.GetModifications(IIntegrationResult from, IIntegrationResult to)
at ThoughtWorks.CruiseControl.Core.IntegrationRunner.Integrate(IntegrationRequest request)

常见的配置部分如下:
<sourcecontrol type="svn">
<trunkUrl>http://ourserver/svn/$(project-svn-path)/trunk/</trunkUrl>
<executable>C:\Program Files\CollabNet Subversion Server\csvn.exe</executable>
<username>user</username>
<password>password<password>
<revert>true</revert>
</sourcecontrol>

如果可能,我想忽略这个特定的错误。

我需要做哪些改变?

最佳答案

这是我用来防止影响构建状态的这些类型的错误的块:

<maxSourceControlRetries>5</maxSourceControlRetries>
<stopProjectOnReachingMaxSourceControlRetries>true</stopProjectOnReachingMaxSourceControlRetries>
<sourceControlErrorHandling>ReportOnRetryAmount</sourceControlErrorHandling>

你需要把这些放在 <project> 的正下方标签,而不是 <sourcecontrol> .不过,我不确定您是否能够仅忽略“超时”异常——所有 SVN 异常都将被同等对待。

更新:您可以在 CC.NET documentation 中找到有关这些设置的更多信息。 ,但让我复制相关内容:

maxSourceControlRetries : 在项目进入停止状态之前(当 stopProjectOnReachingMaxSourceControlRetries 设置为 true 时),一行中可能发生的最大源代码控制异常数量。

stopProjectOnReachingMaxSourceControlRetries : 是否在达到 maxSourceControlRetries 时停止项目。当设置为 true 时,当连续源代码控制错误的数量等于 maxSourceControlRetries 时,项目将停止。

sourceControlErrorHandling :发生源代码控制错误时(在 GetModifications 期间)要采取的操作。这些是可能的值:
  • ReportEveryFailure :每当出现错误时运行发布者部分
  • ReportOnRetryAmount :仅在达到 maxSourceControlRetries 时运行发布者部分,发布者部分将只运行一次。
  • ReportOnEveryRetryAmount :每当达到 maxSourceControlRetries 时运行发布者部分。当达到 maxSourceControlRetries 且发布者部分已运行时,计数器将重新设置为 0。
  • 关于svn - 我们可以告诉 CruiseControl.NET 忽略源代码控制超时错误吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2086957/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com