Компьютеры · Инструкция
GitHub Actions job skipped из-за if: как проверить условие и context
Skipped job часто объясняется не ошибкой runner, а логикой выражения: другое событие, пустой context, false-ветка или за
Короткий ответ
Проверьте выражение `if:` и фактические значения context для события. Job будет пропущен, если условие вычислилось в false; для зависимых jobs учитывайте `needs` и status-функции вроде `always()`/`failure()`.
Что делать
- Найдите уровень if: Проверьте условие на job и на отдельных steps.
- Сверьте событие: Убедитесь, что используемый context существует для текущего `github.event_name`.
- Проверьте needs: Если job зависит от `needs`, посмотрите result каждой зависимости.
- Выведите безопасные поля: Добавьте диагностический step с несекретными context-значениями, которые участвуют в условии.
- Упростите выражение: Разбейте сложный `if` на несколько очевидных условий и повторите тестовый run.
Важно
Не печатайте secrets или полный context в лог ради диагностики.
Что учитывать
Не печатайте secrets или полный context в лог ради диагностики.
Источники и проверка
Фактическая часть сверена по первичным источникам (в т.ч. Workflow syntax for GitHub Actions). Пример и формулировки — редакция N1RO на 2026-09-17.