n1ro°
RU

Компьютеры · Инструкция

Как выбрать self-hosted runner по меткам GitHub Actions

`runs-on` может содержать несколько labels. Job попадёт только на runner, который соответствует всем указанным требовани

Редакция N1RO · Проверено

Короткий ответ

Укажите в `runs-on` набор labels, которым должен соответствовать runner. Для обычного self-hosted runner это часто `[self-hosted, linux, x64, gpu]`, но `self-hosted` можно отключить при регистрации, а ARC имеет свои ограничения.

Что делать

  1. Посмотрите labels runner: Откройте Settings → Actions → Runners и выберите нужный runner.
  2. Определите минимальный набор: Оставьте только метки, действительно необходимые job.
  3. Укажите runs-on: Например: `runs-on: [self-hosted, linux, x64, gpu]`.
  4. Запустите workflow: Убедитесь в логах, что job назначен ожидаемому runner.

Проверка результата

  • Job не висит в очереди из-за несовместимых labels
  • Выполнение произошло на ожидаемой машине

Важно

Все labels в массиве должны совпасть. Не полагайтесь на `self-hosted`, если runner зарегистрирован с `--no-default-labels` или используется Actions Runner Controller.

Что учитывать

Все labels в массиве должны совпасть. Не полагайтесь на `self-hosted`, если runner зарегистрирован с `--no-default-labels` или используется Actions Runner Controller.

Источники и проверка

Фактическая часть сверена по первичным источникам (в т.ч. Choosing the runner for a job). Пример и формулировки — редакция N1RO на 2026-09-18.