У меня возникают проблемы с Teamcity
, где он продолжает выполнять шаги сборки, даже если предыдущие были неудачными.
Последний шаг моей конфигурации сборки развертывает мой сайт, который я не хочу делать, если какой-либо из моих тестов не работает.
Каждый шаг сборки устанавливается только для выполнения, если все предыдущие шаги были успешными.
На вкладке "Условия сбоя сборки" я проверил следующие параметры в разделе "Сбой сборки", если:
-build process exit code is not zero
-at least one test failed
-an out-of-memory or crash is detected (Java only)
Это не работает - даже если тесты не пройдут, TeamCity разворачивает мой сайт, почему?
Я даже попытался добавить дополнительное условие сбоя сборки, которое будет искать конкретный текст в журнале сборки (а именно "Test Run Failed." )
При просмотре завершенного теста на обзорной странице вы можете увидеть сообщение об ошибке против последней сборки:
"Не удалось выполнить тестовый прогон". текст появился в журнале построения
Но он все равно развертывает его в любом случае.
Кто-нибудь знает, как это исправить? Похоже, что проблема длилась долгое время, здесь.
По-видимому, существует обходное решение:
До сих пор мы не рассматриваем эту функцию как очень важную, так как существует очевидное обходное решение: script может проверить необходимое условие и не создавайте артефакты, настроенные в TeamCity.
например. a script может перемещать артефакты из временного каталога в каталог, указанный в TeamCity, как публикация артефактов только из перед финишем и в случае успешной операции сборки.
Но мне непонятно, как это сделать, и это не похоже на лучшее решение. Любая помощь была оценена.
Изменить. Я также смог решить проблему с зависимостью моментальных снимков, где у меня была бы отдельная сборка "deploy", зависящая от тестовой сборки, и теперь она не запускается если тесты не выполняются.
Это было полезно для установки зависимости вверх.