13.4. Настройка Forgejo Runner
Forgejo Runner — лэто компонент, который выполняет задания CI/CD, полученные от сервера Forgejo. Runner устанавливается и настраивается отдельно от сервера Forgejo.
Установка пакета:
# apt-get install forgejo-runner
После установки создается системный пользователь _forgejo-runner, от имени которого запускается служба Runner.
Для выполнения заданий в контейнерах Runner использует механизм контейнеризации Podman. Для этого пользователю Runner необходимо предоставить доступ к пользовательской службе Podman.
Перед началом работы необходимо:
Разрешить запуск пользовательских systemd-служб без интерактивного входа:
# loginctl enable-linger _forgejo-runner
Включить и запустить сокет Podman:
# systemctl --user -M "$(id -u _forgejo-runner)@" enable --now podman.socket
Перед подключением к серверу Forgejo Runner необходимо зарегистрировать. В процессе регистрации создается связка идентификатора UUID и токена Token, которая используется для аутентификации Runner.
Зарегистрированный Runner получает права:
получать задания CI/CD из разрешенных репозиториев;
передавать на сервер Forgejo информацию о своем состоянии;
отправлять результаты выполнения заданий, журналы и артефакты.
Область действия Runner определяется уровнем регистрации:
системный уровень — раздел /admin/actions/runners. Runner может выполнять задания из всех репозиториев экземпляра Forgejo;
уровень организации — раздел /org/<organization>/settings/actions/runners. Runner вможет выполнять задания из всех репозиториев указанной организации;
уровень пользователя — раздел /user/settings/actions/runners. Runner может выполнять задания из всех репозиториев, принадлежащих пользователю;
уровень репозитория — раздел /<owner>/<repository>/settings/actions/runners. Runner может выполнять задания только из указанного репозитория.
При просмотре списка Runner на более низком уровне отображаются также Runner, зарегистрированные на более высоком уровне. Например, в настройках отдельного репозитория будут отображаться Runner, зарегистрированные для этого репозитория, организации и всего экземпляра Forgejo.
13.4.1. Получение токена регистрации
Встроенный веб-интерфейс доступен по адресу http://localhost:5000
Токен регистрации создается в веб-интерфейсе Forgejo:
Открыть один из разделов:
Нажать кнопку Создать новый исполнитель.
Скопировать отображаемый токен регистрации: