相关疑难解决方法(0)

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

我们已经设置了CruiseControl.NET来持续集成我们的一些项目.

我们使用一个<cb:define>块来确保所有源代码控制操作都以相同的方式完成,并保持配置DRY.

我们偶尔会遇到一个问题导致构建显示"异常".消息如下:

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)
Run Code Online (Sandbox Code Playgroud)

常见的配置部分如下:

<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>
Run Code Online (Sandbox Code Playgroud)

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

我需要做出哪些改变?

svn cruisecontrol.net continuous-integration

10
推荐指数
2
解决办法
5479
查看次数

当SVN不可用时,CruiseControl.NET构建失败

我们有一个外部托管的SVN存储库,我们的构建服务器当前是内部的.由于网络中断,超时或其他一些随机原因,构建服务器偶尔(可能每天1或2次)无法找到SVN存储库.使用外部托管的存储库很难避免,但是当它无法找到SVN存储库时,它无法构建!

我想找到一种方法让它在下一个时间间隔再次尝试,并忽略与未解决的存储库相关的任何错误.有谁知道我怎么做到这一点?

我已经发布了我的配置以供参考.

<project name="MyProject" queuePriority="0">
<workingDirectory>C:\RemovedForPost</workingDirectory>
<artifactDirectory>C:\RemovedForPost </artifactDirectory>
<sourcecontrol type="svn">
  <trunkUrl>http://RemovedForPost \</trunkUrl>
  <workingDirectory>source</workingDirectory>
  <username>myuser</username>
  <password>*****</password>
</sourcecontrol>
<triggers>
  <intervalTrigger name="BuildAMinute" seconds="60" buildCondition="IfModificationExists" />
</triggers>
<tasks>
  <msbuild>
    <executable>C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe</executable>
    <workingDirectory>C:\RemovedForPost</workingDirectory>
    <projectFile>C:\RemovedForPost\RemovedForPost.sln</projectFile>
    <buildArgs>/noconsolelogger /p:Configuration=Debug /v:diag</buildArgs>
    <targets>Build</targets>
    <logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
    <timeout>120</timeout>
  </msbuild>
  <nunit>
    <path>C:\Program Files\NUnit 2.5\bin\net-2.0\nunit-console.exe</path>
    <outputfile>C:\RemovedForPost.xml</outputfile>
    <assemblies>
      <assembly> RemovedForPost </assembly>
    </assemblies>
    <timeout>60</timeout>
  </nunit>
</tasks>
Run Code Online (Sandbox Code Playgroud)

谢谢

svn cruisecontrol.net

7
推荐指数
1
解决办法
869
查看次数