2011-01-19 8 views
2

У нас возникла проблема с непрерывной интеграцией нашего проекта. Иногда мы пытаемся очистить все файлы на сборке в TeamCity в своем каталоге проверки. Всякий раз, когда мы пытаемся это сделать, nunit-agent.exe заканчивается остается открытой из предыдущей сборки, получая следующие ошибки:TeamCity Build Fails Поскольку NUnit блокирует файлы?

[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, что если программа зависает, чтобы закрыть ее?

+0

Как вы используете NUnit - вы работаете сами из сценария, или с помощью с помощью бегунка TeamCity NUnit в стадии сборки? – adrianbanks

+0

Запуск сам из exe, включенного в репозиторий (nunit-console.exe). – Scott

+1

отслеживает процессы, выполняемые агентом сборки при выполнении сборки. Вероятно, вы не завершаете nunit-console.exe, когда он закончил выполнение тестов, оставив после завершения сборки оставшийся процесс. – adrianbanks

ответ

0

Утомляли ли вы настройку сбоя, если она работает с настройкой lonnger than x?

См http://confluence.jetbrains.net/display/TCD5/1.General+Settings

Установите этот параметр и введите значение в минут для того, чтобы контролировать время на сборки. Если превышено заданное количество времени , сборка автоматически отменяется. Этот параметр помогает справляться со сборками, которые висят и поддерживает эффективность агента.

+0

Да, это установлено на 10 минут. Это происходит сразу же после начала сборки (так как процесс NUnit никогда не завершается, даже если сборка не работает). – Scott

0

Нет ошеломляющие идеи с моей стороны, только очевидные:

  1. Обновление до последней версии, как правило, не помогает.
  2. Является ли неудачная «полная сборка (ветвь dev)» единственной конфигурацией, использующей «проверку стороны агента»? Другие, на которых я смотрел, используют «проверку на стороне сервера». Я не эксперт в этой разнице, но вы уверены, что вам это нужно?
+0

Этот тип сбоя также произошел в сборке ветвей по умолчанию. В основном это происходит, когда «Очистить все файлы до сборки» проверяется в настройках TeamCity. – Scott

0

У меня был этот выпуск тоже. Я обновился до 2.6.012035, и теперь он работает для меня.

0

Используйте Swabra плагин, Люк Он включен по умолчанию

 Смежные вопросы

  • Нет связанных вопросов^_^