Go-CD - Как вы перестаете генерировать артефакты, если JUNIT, JASMINE или регрессионный тест не пройдены в Go-CD
Мы активно используем GO-CD. Мы получаем JUNIT JASMINE и другие результаты, однако артефакты сборки всегда публикуются go-cd, который выбирается другими агентами для автоматического развертывания. Мы хотим установить маркеры процентного значения для JUNIT JASMINE и т. Д., И если наблюдаемое значение меньше маркера%, мы заинтересованы в том, чтобы go-cd не публиковал артефакты.
Есть идеи?
1 ответ
В идеале после создания отчета запускается еще одна задача, в которой проверяются результаты отчета.
Это может быть, например, команда grep внутри сценария оболочки, которая ищет слова fail или error в файлах отчетов XML. Как только задача заканчивается с кодом возврата, не равным 0, GoCD считает задачу неудачной.
То же относится и к процентному маркеру, требуется задание, которое рассчитывает процент и затем предоставляет соответствующий код возврата. 0, когда процентная цель достигнута или превышена, и отличается от 0, если цель не достигнута. Эта задача также может быть реализована как пользовательская задача, такая как сценарий оболочки, оценивающий отчеты.
Сам конвейер может быть настроен так, чтобы не публиковать какие-либо артефакты в случае сбоя задачи или ошибок.