Info
Content

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

Screenshot_2021_02_02-12_49_03-2021-07-05-at-1wmwmwmwm.png

stages:
    - test

c:
    stage: test
    script:
        - echo "Statements - $(echo $RANDOM | head -c 2).$(echo $RANDOM | head -c 2)"

Screenshot_2021_02_02-12_49_03-2021-07-05-at-16sssssss.png

В инете есть готовые регулярки для разных систем тестирования (в доке гитлаба тоже есть)

В разделе 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
Back to top