n1ro°
RU

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

Как определить ОС и архитектуру runner в GitHub Actions

Внутри job GitHub предоставляет переменные runner-контекста. Для shell-команд доступны стандартные переменные `RUNNER_OS

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

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

В step выведите или используйте `$RUNNER_OS` и `$RUNNER_ARCH`; в выражениях workflow при необходимости используйте контекст `runner.os` и `runner.arch`.

Что делать

  1. Добавьте диагностический step: В shell выполните `echo "$RUNNER_OS $RUNNER_ARCH"`.
  2. Сверьте runs-on: Проверьте, что значения соответствуют выбранному runner.
  3. Ветвите установку: Выбирайте архив или команду по ОС/архитектуре, а не по имени runner label.
  4. Не логируйте лишнее: Оставьте только данные среды, которые реально помогают диагностике.

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

  • Определены фактические OS и architecture job
  • Скрипт выбирает совместимый бинарник

Важно

Значения контекста и labels решают разные задачи: labels выбирают runner, а runner-переменные описывают уже запущенную среду.

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

Значения контекста и labels решают разные задачи: labels выбирают runner, а runner-переменные описывают уже запущенную среду.

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

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