Вводная о раннерах
Раннер — это приложение, которое запускает джоб пайплайна в GitLab CI/CD. Мы используем свои раннеры, которые запускаем на выделенных для них вычислительных ресурсах.
Типы раннеров
Shared
Shared-ранеры — это раннеры, которые доступны для всех по умолчанию. Особенностью данного типа раннеров является то, что доступность вычислительных ресурсов, а также их объем не гарантируется.
Tenant
Tenant-ранеры — это раннеры, выделенные для определенного тенанта. Для ранеров данного типа доступны три типа флейворов (Medium, Large и XL) с гарантированной квотой и вычислительными ресурсами.
Важно! Данный тип ранеров не доступен для данной инсталляции.
Tenant-ранеры
Medium
Раннер, который подходит для большинства сборок. Квота по умолчанию 20 параллельных задач. По запросу квота может быть увеличена.
Общее количество ресурсов, которое выделили под этот тип:
- CPU: 3000m;
- RAM: 6000Mi;
- Storage: 25000Mi.
Large
Общее количество ресурсов, которое выделяется под одну Gitlab CI Job для данного ранера:
- CPU: 7000m;
- RAM: 14000Mi;
- Storage: 35000Mi.
Чтобы запустить сборку:
-
Откройте файл
gitlab-ci.yaml. -
Укажите тег
large.
job-name:
script:
...
tags:
- large
XL
Раннер, с помощью которых собирают тяжеловесные мобильные приложения.
Общее количество ресурсов, которое выделили под этот тип:
- CPU: 15000m;
- RAM: 28500Mi;
- Storage: 45000Mi.
Чтобы запустить сборку:
-
Откройте файл
gitlab-ci.yaml. -
Укажите тег
xl.
script:
...
tags:
- xl
Ограничения сборок
Сборка может работать не более:
- 4 часов на ветке master;
- 4 часов на ветках c префиксом
release*; - часа на всех остальных ветках.
Лимиты в 4 часа применяются только к пайплайнам, запущенным в ветке. Для пайплайнов в merge request — час.
О пайплайнах в ветке и merge request
В Gitlab два основных типа пайплайнов, они отличаются контекстом запуска:
- branch pipeline — запущен в ветке;
- merge request pipeline — запущен в merge request.
В конфигурации gitlab-ci.yaml вы можете указать, в какой пайплайн они попадут.
