由于NUnit锁定文件,TeamCity构建失败?

时间:2011-01-19 13:46:43

标签: .net nunit teamcity nunit-console teamcity-5.1

我们的项目持续集成存在问题。有时,我们希望尝试在其checkout目录中清除TeamCity中构建的所有文件。每当我们尝试执行此操作时,nunit-agent.exe最终会从上一个版本中保持打开状态,从而产生以下错误:

[05:35:40]: [Updating sources: Agent side checkout...] Failed to delete file: C:\TeamCity\buildAgent\work\path\to\UnitTestResults.xml
[05:35:40]: [Updating sources: Agent side checkout...] Failed to delete file: C:\TeamCity\buildAgent\work\path\to\src\packages\NUnit.2.5.7.10213\Tools\lib\nunit-console-runner.dll
[05:35:40]: [Updating sources: Agent side checkout...] Failed to delete file: C:\TeamCity\buildAgent\work\path\to\src\packages\NUnit.2.5.7.10213\Tools\lib\nunit.core.dll
[05:35:40]: [Updating sources: Agent side checkout...] Failed to delete file: C:\TeamCity\buildAgent\work\path\to\src\packages\NUnit.2.5.7.10213\Tools\lib\nunit.core.interfaces.dll
[05:35:40]: [Updating sources: Agent side checkout...] Failed to delete file: C:\TeamCity\buildAgent\work\path\to\src\packages\NUnit.2.5.7.10213\Tools\lib\nunit.util.dll
[05:35:40]: [Updating sources: Agent side checkout...] Failed to delete file: C:\TeamCity\buildAgent\work\path\to\src\packages\NUnit.2.5.7.10213\Tools\nunit-agent.exe

在构建重新开始工作之前,我们总是要求有权访问该框的人手动终止该进程。 NUnit必须无限期地保持开放的原因是什么(我们可以等待24小时,它仍然会挂起)?是否有一些命令需要在我们的构建脚本中使用以强制终止,或告诉TeamCity如果程序挂起以强行关闭它?

4 个答案:

答案 0 :(得分:0)

你是否已经厌倦了设置'失败的构建,如果它运行lonnger而不是x'设置?

请参阅http://confluence.jetbrains.net/display/TCD5/1.General+Settings

  

选中此选项并输入值   分钟启用时间控制   建立。如果指定的时间量   超出,构建是   自动取消。这个选项   有助于处理挂起的构建   并保持代理效率。

答案 1 :(得分:0)

我没有令人惊叹的见解,只有显而易见的:

  1. 更新到最新版本通常有帮助。
  2. 失败的“Full Build(dev分支)”是否是使用“代理端签出”的唯一配置?我看过的其他人都使用“服务器端结账”。我不是差异的专家,但你确定需要吗?

答案 2 :(得分:0)

我也有这个问题。我升级到2.6.012035,它现在正在为我工​​作。

答案 3 :(得分:0)

使用Swabra插件,Luke 它默认包含