Что делает следующий фрагмент кода .gitlab-ci.yml файла?
Подскажите, что делает следующий фрагмент кода .gitlab-ci.yml файла:
except:
- tags
artifacts:
untracked: true
expire_in: 1 day
Из документации по gitlab-ci, не совсем понял:
except - When a Git reference of a pipeline is a tag.
untracked: true - подтягивать не отслеживаемые Git артефакты
expire_in: 1 day - хранить на сервере артефакты один день
Ответы (1 шт):
except: tags
Gitlab CI запускается при получении новых изменений из локальных репозиториев. Чтобы инструкции из файла .gitlab-ci.yml не запускались на каждое такое изменение, есть возможность накладывать ограничения. В данном случае указывается, что запуск не происходит если на сервер отправляются только теги. То есть для следующих команд pipeline не запуститься, но изменения сервер получит.
git tag v0.0.1
git push --tags
untracked: true
Указывает Gitlab Runner рассматривать как артефакты файлы, которые появляются после клонирования репозитория и выполнения .gitlab-ci.yml. Эти файлы не будут являются частью репозитория, то есть с точки зрения Git не отслеживаются.
expire_in: 1 day
Если артефакты не удалять, то они будут копиться довольно быстро. Чтобы это не происходило Gitlab можно задать время хранения артефактов, по истечения этого времени артефакты будут удалены автоматически. Информация о ходе выполнения pipeline сохранится.