Как я могу искать строку в журнале и только перестать работать, если я нахожу его в Гудзоне?

Моя сборка и развертывается, шаг создает некоторые журналы. Я хотел бы искать журналы и привести сборку к сбою, если я вижу определенные строки.

Хороший журнал похож

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

1
задан Rob Spieldenner 25 June 2010 в 14:50
поделиться

1 ответ

Из документации hudson для команды оболочки:

По умолчанию оболочка вызывается с параметром «-ex». Таким образом, все команды печатаются перед выполнением, и сборка считается неудачной, если любая из команд завершается с ненулевым кодом выхода. Опять же, добавьте строку #! / Bin / ..., чтобы изменить это поведение.

Итак, попробуйте добавить строку #! / Bin / sh и посмотрите, что она делает?

2
ответ дан 2 September 2019 в 23:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: