CruiseControl.NET - как запустить сборку при сбое проекта

У меня есть некоторые внутренние ошибки, возникающие из сторонних библиотек при сборке комплексного решения в VS2010, и иногда также ошибки доступа к серверам времени в сети. Я могу обнаружить эти конкретные ошибки сборки, анализируя файл журнала сборки.

мой нормальный триггер:

<intervalTrigger
               name="Build Upon Check-In Modifications"
               seconds="300"
               buildCondition="IfModificationExists"
               initialSeconds="300"/>

Как добавить триггер, который снова запускает сборку, если сборка проекта не удалась из-за вышеупомянутых ошибок? Обычно повторение сборки избавляет от ошибок...(также мой анализ файла журнала сборки находится в C# и находится под моим контролем)

1 ответ

Единственное, о чем я могу сразу подумать, это иметь другой проект, указывающий на те же источники, но вызванный триггером проекта, который, в свою очередь, связан с первым проектом. Триггер проекта может быть настроен на запуск сборки только в случае сбоя основной сборки.

Это ответ технической части, но семантически выглядит довольно странно, чтобы обойти это таким образом. Лучшим способом было бы потратить некоторое время и выяснить точные проблемы и решить их соответствующим образом. Например, если вы зависите от веб-служб, которые недоступны, вы можете создать цикл попыток и настроить количество попыток и т. Д.

Надеюсь, вы поняли идею.

Другие вопросы по тегам