У нас возникла проблема с непрерывной интеграцией нашего проекта. Иногда мы хотим попытаться очистить все файлы при сборке в 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, что если программа зависает, чтобы принудительно закрыть ее?