Jenkins BUILD_LOG оценивается как […усеченный ]

#jenkins

Вопрос:

Я пытаюсь установить имя сборки/описание сборки на основе результатов сценария оболочки. Например, я выполняю следующие строки в оболочке:

 echo `date`

if [ $test == true ]then
echo "BuildSuccess"
else
echo "NoBuild"
fi
 

Затем я запускаю шаг сборки «Изменяет описание сборки». В этом я добавил макрос:

 ${BUILD_LOG,maxLines=1}
 

После выполнения задания я получаю результат в виде:

 [SSH] executing...
Thu May 20 00:47:42 PDT 2021
BuildSuccess

[SSH] completed
[SSH] exit-status: 0

New run description is '[...truncated 478 B...]
'
Evaluated macro: '#37'
New run name is '#37'
Finished: SUCCESS
 

Может ли кто-нибудь помочь мне понять, почему макрос оценивается как […усеченный 478 B…]?

Есть ли способ, которым я могу записать текст «BuildSuccess» из журнала? По сути, я пытаюсь захватить последнюю строку журнала сборки.

Пожалуйста, обратите внимание, что это фристайл-проект, а не конвейер.

Ответ №1:

Я решил аналогичную проблему,:

  • BUILD_LOG_REGEX
  • плагин email-ext

Вот учебное пособие http://siddesh-bg.blogspot.com/2012/04/using-buildlogregex-in-jenkins-email.html .

С помощью BUILD_LOG_REGEX вышеупомянутого плагина можно запрашивать и извлекать части журнала сборки.

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

1. Большое спасибо за помощь @Antonio Petricca! Я пробовал это раньше, но это не работало. Трюк, который я пропустил, заключался в использовании showTruncatedLines=false