Сбой сборки Maven, но код выхода по-прежнему равен 0

#bash #maven #jenkins

#bash #maven #дженкинс

Вопрос:

Я запустил Maven build ( mvn clean install ) в нашем конвейере Jenkins, мы используем плагин Surefire для запуска наших тестов, один тест не удался, и мы видим, что Maven печатает BUILD FAILED и что код выхода равен 0. В чем причина этого? (Код выхода 0 означает успех)

Мой код выглядит так:

 mvn clean install
RESULT=$?
if [ $RESULT -ne 0 ];then exit 1; fi;
 

Комментарии:

1. Как вы вызываете Maven в Jenkins? Через скрипт? Или конвейер?

2. Скриптовый конвейер

3. Можете ли вы показать, как это выглядит?

Ответ №1:

В итоге я проверил журнал, используя это условие. Сначала перенаправляем вывод mvn в файл

 mvn clean install | tee mvn_res
 

А затем проверка состояния сборки с помощью grep

 if grep -v 'BUILD SUCCESS' mvn_res;then exit 1; fi;