Моя сборка и развертывается, шаг создает некоторые журналы. Я хотел бы искать журналы и привести сборку к сбою, если я вижу определенные строки.
Хороший журнал похож
log stuff
step 1: SUCCESS
step 2: SUCCESS
Журнал с отказами был бы похож
log stuff
step 1: SUCCESS
step 2: FAIL
Моя проверка
grep FAIL /path/to/build.log
if [ $? -eq 0 ]; then
exit 1
fi
Я также попробовал
RESULT=`grep FAIL /path/to/build.log`
if [ -n "$RESULT" ]; then
exit 1
fi
и различные способы передать по каналу в файле.
Hudson приводит сборку к сбою на grep, ничего не возвращая. Так есть ли лучший способ искать строку? Существует ли способ иметь grep, ничего не возвращая не, выходят из сценария тут же?
Материал версии: * Hudson 1.355
Из документации hudson для команды оболочки:
По умолчанию оболочка вызывается с параметром «-ex». Таким образом, все команды печатаются перед выполнением, и сборка считается неудачной, если любая из команд завершается с ненулевым кодом выхода. Опять же, добавьте строку #! / Bin / ..., чтобы изменить это поведение.
Итак, попробуйте добавить строку #! / Bin / sh и посмотрите, что она делает?