CI/CDЧасто задаваемые вопросы (FAQ)

Часто задаваемые вопросы (FAQ)

В этом разделе рассматриваем популярные вопросы о GitVerse CI/CD.

Где посмотреть все настройки для раннера?

Все многообразие настроек можно посмотреть, запустив раннер с флагом-парметром generate-config:

./runner generate-config

Можно ли управлять параллелизмом задач обрабатываемых раннером?

  1. Запустите раннер с флагом-параметром generate-config:

    ./runner generate-config > config.yaml
  2. В секции runner созданного конфигурационного файла в параметре capacity укажите максимальное количество job, которые раннер может выполнять параллельно:

    runner:
      capacity: 4
  3. Запустите раннер с созданным config.yaml.

    Если используете приложение:

    ./runner daemon --config config.yaml

    Если используете docker-контейнер:

    docker run \
      -v /var/run/docker.sock:/var/run/docker.sock \
      -v $PWD/config.yaml:/config.yaml \
      -e CONFIG_FILE=/config.yaml \
      -e RUNNER_REGISTRATION_TOKEN=<registration_token> \
      -e RUNNER_NAME=<runner_name> \
      --name my_runner \
      -d gitverse.ru/gitverse/act-runner:latest

Можно ли использовать свой образ для запуска задач?

Чтобы запускать задачи на своем образе (например, с особой средой), в конфигурации job укажите параметр container. Пример:

jobs:
  lint:
    runs-on: self-hosted
    container:
      image: my-registry.example.com/project/my-custom-image:latest

Как собрать docker-образ на облачном раннере?

Используйте kaniko

Можно ли иметь раннеры с одинаковыми метками?

Да, можно. Задачи будут распределяться по мере доступности раннеров с соответствующей меткой.

Где получить токен для доступа к хранилищу GitVerse?

Токен можно сгенерировать в настройках профиля пользователя на вкладке «Управление токенами».

Что за синтаксис у workflow? Он совместим с GitHub Actions?

Синтаксис YAML-файлов CI/CD в GitVerse в целом совместим с GitHub Actions. Вы можете использовать существующие workflow (включая большинство действий из Marketplace) практически без изменений.

Доступен ли CI/CD для зеркальных репозиториев?

Если ваш репозиторий импортирован в GitVerse как зеркало (mirror), то для него CI/CD недоступен.

Почему раннер не берет задания в работу?

Если задача висит в статусе «В ожидании», а затем помечается «Отменено», это означает, что не найден подходящий раннер. Проверьте, правильно ли указан параметр runs-on в workflow:

  • Если используется self-hosted раннер, убедитесь, что хотя бы один раннер с требуемой меткой подключен и активен.
  • Если используется облачный раннер, проверьте лимиты использования (возможно, исчерпано лимит сборочного времени).

Ошибка 401 при скачивании Docker-образа (при запуске раннера)

Убедитесь, что в переменных или секретах заданы оба параметра: DOCKER_USERNAME и DOCKER_PASSWORD (и что они корректны). Часто ошибка 401 возникает, если вместо пары логин/пароль указано что-то неверно или дублируется одно поле.

Вы нашли что искали?