#continuous-integration #gitlab-ci
#непрерывная интеграция #gitlab-ci
Вопрос:
Какие команды совместимы внутри файла gitlab-ci.yml. Если все команды оболочки совместимы, как он узнает, когда команда завершается неудачно. то есть, если я запускаю тест, который выводит, какие тесты завершаются неудачно и успешно, как ci интерпретирует эту информацию для обнаружения сбоя.
Ответ №1:
Он распознает это по статусу завершения каждой команды:
Каждая команда возвращает статус выхода (иногда называемый статусом возврата или кодом выхода). Успешная команда возвращает 0, а неудачная возвращает ненулевое значение, которое обычно можно интерпретировать как код ошибки. Исправные команды, программы и утилиты UNIX возвращают код выхода 0 после успешного завершения.
Итак, если ни одна из команд не возвращает ненулевое значение, сборка пройдет как успешная. Вы должны иметь возможность имитировать сбой, вызывая exit 1
непосредственно в своей работе:
your_job:
script:
- exit 1