Как Gitlab CI определяет, пройден ли тест PHPUnit или нет? - PullRequest
0 голосов
/ 02 января 2019

У меня есть этот базовый .gitlab-ci.yml файл.

image: php:7.2

before_script:
  # install git
  - apt-get update -yqq
  - apt-get install git -yqq
  # Install composer
  - curl -sS https://getcomposer.org/installer | php
  # Install all project dependencies
  - php composer.phar install


tests:
  script:
    - vendor/bin/phpunit tests

Это прекрасно работает, предупреждает меня, если модульные тесты не пройдены или пройдены успешно.

Мой вопрос: как именно Gitlab CI знает это? Они анализируют вывод PHPUnit и проверяют, существует ли строка FAILURES!?

1 Ответ

0 голосов
/ 03 января 2019

gitlab-ci проверяет только коды выхода процессов, запущенных внутри него. Если процесс завершается с кодом состояния, отличным от 0, конвейер останавливается и объявляет ошибку. Так работает конвейер CI, не только gitlab, но и Jenkins и т. Д.

...