Первоначальные предложения по устранению неполадок
Существует несколько способов устранения неполадок при выполнении неудачного рабочего процесса.
Использование GitHub Copilot
Если выполнение рабочего процесса завершается сбоем, вы можете открыть чат с GitHub Copilot для устранения ошибки. См . раздел AUTOTITLE.
Использование журналов выполнения рабочих процессов
Каждый запуск рабочего процесса создает журналы действий, которые можно просматривать, скачивать, а также выполнять по ним поиск. Дополнительные сведения см. в разделе Использование журналов выполнения рабочих процессов.
Включение ведения журналов отладки
Если журналы рабочих процессов не предоставляют достаточно сведений для диагностики причин несоответствующего выполнения рабочего процесса, задания или шага, можно дополнительно включить ведение журнала отладки. Дополнительные сведения см. в разделе Включение ведения журналов отладки.
Если рабочий процесс использует определенные инструменты или действия, включение их параметров отладки или подробного ведения журнала может помочь создать более подробные выходные данные для устранения неполадок.
Например, можно использовать npm install --verbose
для npm или GIT_TRACE=1 GIT_CURL_VERBOSE=1 git ...
для git.
Просмотр ошибок выставления счетов
Использование действий включает минуты выполнения и хранилище для артефактов рабочего процесса. Дополнительные сведения см. в разделе Сведения о выставлении счетов за GitHub Actions.
Настройка бюджета
Настройка бюджета действий может помочь немедленно разблокировать рабочие процессы из-за ошибок выставления счетов или хранилища. Это позволит взимать счета за дополнительные минуты и использование хранилища до указанной суммы бюджета. Дополнительные сведения см. в разделе Использование бюджетов для контроля расходов на лимитные продукты.
Просмотр действия GitHub Actions с помощью метрик
Чтобы проанализировать эффективность и надежность рабочих процессов с помощью метрик, см. раздел Просмотр метрик GitHub Actions.
Устранение неполадок триггеров рабочего процесса
Вы можете просмотреть поле рабочего процесса on:
, чтобы понять, что ожидается активировать рабочий процесс. Дополнительные сведения см. в разделе Активация рабочего процесса.
Полный список доступных событий см. в разделе События, инициирующие рабочие процессы.
Активация условий событий
Некоторые триггерные события выполняются только из ветвь по умолчанию (т. е. issues
, schedule
). Версии файлов рабочего процесса, существующие за пределами ветвь по умолчанию, не будут запускаться для этих событий.
Рабочие процессы не будут выполняться в pull_request
действии, если запрос на вытягивание имеет конфликт слияния.
Рабочие процессы, которые в противном случае будут активированы push
или pull_request
действия будут пропущены, если сообщение фиксации содержит заметку о пропуске. Дополнительные сведения см. в разделе Пропуск запусков рабочих процессов.
Запланированные рабочие процессы выполняются в непредвиденное время
Запланированные события могут быть отложены в периоды высокой нагрузки рабочих процессов GitHub Actions.
К периодам высокой загрузки относится начало каждого часа. Если загрузка достаточно высока, некоторые задания в очереди могут быть удалены. Чтобы уменьшить вероятность задержки, запланируйте выполнение рабочего процесса в другое время часа. Дополнительные сведения см. в разделе События, инициирующие рабочие процессы.
Ограничения фильтрации и диффа
Определенные события позволяют фильтровать по ветвям, тегам и/или путям, которые можно настроить. Создание запуска рабочего процесса будет пропущено, если условия фильтра применяются для фильтрации рабочего процесса.
Специальные символы можно использовать с фильтрами. Дополнительные сведения см. в разделе Синтаксис рабочего процесса для GitHub Actions.
Для фильтрации путей оценка диффов ограничена первыми 300 файлами. Если в первых 300 файлах, возвращаемых фильтром, изменены файлы, которые не совпадают, рабочий процесс не будет выполняться. Дополнительные сведения см. в разделе Синтаксис рабочего процесса для GitHub Actions.
Устранение неполадок при выполнении рабочего процесса
Выполнение рабочего процесса включает все проблемы, возникающие после запуска рабочего процесса, и запуск рабочего процесса был создан.
Отмена рабочих процессов
Если стандартная отмена через пользовательский интерфейс или API не обрабатывается должным образом, может быть задана условная инструкция, настроенная для выполняемых заданий рабочего процесса, что приводит к не отмене.
В таких случаях api можно использовать для принудительного отмены выполнения. Дополнительные сведения см. в разделе Конечные точки REST API для выполнения рабочих процессов.
Распространенной причиной может быть использование always()
функции проверки состояния, которая возвращается true
даже при отмене. Альтернативой является использование обратной cancelled()
функции. ${{ !cancelled() }}
Дополнительные сведения см. в разделе [AUTOTITLE и Использование условий для управления выполнением задания](/actions/managing-workflow-runs-and-deployments/managing-workflow-runs/canceling-a-workflow#steps-github-takes-to-cancel-a-workflow-run).
Устранение неполадок с средствами выполнения
Определение меток runner
GitHub,размещенные в среде runners, используют предустановленные метки, поддерживаемые в репозиторииactions/runner-images
.
Рекомендуется использовать уникальные имена меток для более крупных и локальных runners. Если метка совпадает с любой из существующих предустановленных меток, могут возникать проблемы с назначе��ием runner, в которых отсутствует гарантия, в которой установлен соответствующий параметр runner, на котором будет выполняться задание.
Локальные средства выполнения тестов
При использовании локальных средств выполнения вы можете просматривать их действия и диагностировать распространенные проблемы.
Дополнительные сведения см. в разделе Мониторинг и устранение неполадок в самостоятельно размещенных средствах выполнения.