У нас есть инструмент, который запускает тесты, но возвращает код ошибки, если они не пройдут.
Инструмент запускает тесты после запуска входа в систему через SSH на пользовательскую консоль (не bash) и выдачи команды.Все тесты выполняются одновременно в пределах этого вызова. Регистрация тестов идет в файл.Результат работы инструмента примерно такой:
test1 [ok]
test2 Some message based on the failure
...
Чтобы остановить сборку, нам нужно найти определенные строки в выводе.
Вывод появляется при запуске тестов.
Я мог бы захватить весь вывод в файл и потерпеть неудачу в конце.Но это сэкономит довольно много времени на неудачу после первого теста.
Поэтому я хотел бы что-то вроде tee
, но он также убил бы выполнение, если обнаружит эту строку ошибки.Или, по крайней мере, он должен печатать вывод, как он есть, и возвращать ненулевое значение, если найдена строка.
Это выполнимо с помощью стандартного инструментария Linux?