Pipelines/Pipeline settings
По умолчанию в пайплайнах используется git strategy - fetch, потому что это быстрее. Можно это переопределить на clone, это будет медленнее, но рабочая копия репозитория будет свежей
Это указывается в переменной GIT_STRATEGY
Ограничение через git depth
может ускорить выполнение пайплайна
Глубину можно задавать через переменную GIT_DEPTH
Можно задать таймаут джобе (1h by default) через settings > ci_cd
В этом же разделе настроек можно изменить имя ci/cd yml файла .gitlab-ci.yml -> my-ci.conf.yml
(должен кончаться на .yml
)
В этом же разделе настроек есть пункт "Test coverage parsing"
В нем задается регулярка которой будет парситься вывод джоб
Подходящий под регулярку вывод будет выведен как Coverage
stages:
- test
c:
stage: test
script:
- echo "Statements - $(echo $RANDOM | head -c 2).$(echo $RANDOM | head -c 2)"
В инете есть готовые регулярки для разных систем тестирования (в доке гитлаба тоже есть)
В разделе analytics > repository будет собираться график из значений coverage
Иногда coverage может не парситься из-за цветного вывода, нужно убрать цветность у тестирующей утилиты
В Settings > CI/CD > General Pipelines можно включить функции благодаря которой лишние пайплайны будут отменяться (не заработало)
Возможные статусы пайплайна:
- pending
- running
- passed
- failed
- skipped
- canceled
- unknown
Про бейджи на основе этих статусов
https://docs.gitlab.com/ee/ci/pipelines/settings.html#pipeline-status-badge
No Comments