У меня есть несколько интеграционных тестов, которые TeamCity запускает при успешной сборке.Я успешно использовал TeamCity REST API, чтобы пометить сборку как пройденную или неудачную, но на самом деле хотел бы пометить статус сборки как пройденный или неудачный (таким же образом сборка не удалась из-за компиляцииили сбои модульного теста).
Документация для REST API довольно скудна.Это просто невозможно сделать через REST API или это недокументировано?
Уточнение:
Текущий процесс выглядит следующим образом:
"App" TC Конфигурация сборки на самом делесоздает приложение и запускает модульные тесты.
Конфигурация "Test" TC Build зависит от успешного завершения конфигурации "App".Если «приложение» выполняет успешную сборку (без сбоев компиляции или модульного теста), запускается конфигурация «Тест», которая устраняет артефакты сборки и запускает живые интеграционные тесты приложения.До запуска этих тестов конфигурация «Приложение» имеет статус прохождения, так как она успешно скомпилирована и не было сбоев модульных тестов.
То, что я пытаюсь сделать, - это изменить статус конфигурации приложения на «не удалось», если конфигурация «Тест» не удалась.В настоящее время я просто помечаю «Приложение» как пройденное или не пройденное, но фактический статус сборки всегда проходит.По сути, я пытаюсь заставить журнал изменений или историю отображать красный значок X для неудачной сборки, а не зеленую галочку.
«Приложение» и «Тест» - это две отдельные конфигурации сборки TeamCity.Поскольку они являются отдельными, Взаимодействие сценариев сборки, как предлагает @sharma, не сработает, так как взаимодействие сценариев сборки может быть использовано для сбоя / обновления текущей запущенной конфигурации сборки, в то время как я пытаюсь обновить / отменить отдельную и ужезавершена конфигурация сборки.
Почему у нас есть 2 отдельных конфига, а не просто запустить тесты из основной сборки?Скорость конечно!Интеграционные тесты занимают до 10 минут, и мы не хотим замедлять цикл компиляции только потому, что интеграционные тесты выполняются.