Skip to main content

Ограничения действий

Существуют ограничения в GitHub Actions, которые могут возникнуть при увеличении масштаба, некоторые из них могут быть увеличены путем обращения в службу поддержки.

При масштабировании использования может быть ограничена скоростью GitHub Actions. Некоторые ограничения можно увеличить, связав .

Если иное не указано, ожидаемое поведение при достижении ограничения заключается в том, что рабочий процесс или задание будет отменено.

Эти ограничения могут меняться.

Существующие ограничения системы

Ограничение категорииЛимитЗа пороговое значениеDescriptionМожет ли увеличение поддержки GitHub ?
Ограничение выполнения рабочего процессаВремя выполнения рабочего процесса35 дней / запуск рабочего процессаПо достижении этого предела выполнение рабочего процесса будет отменено. Этот период включает длительность выполнения и время, затраченное на ожидание и утверждение.
Ограничение выполнения рабочего процессаВремя утверждения шлюза30 днейРабочий процесс может ждать до 30 дней на утверждениях среды.
Очередь рабочих процессовОграничение скорости событий триггера рабочего процесса1500 событий / 10 секунд / репозиторийКаждый репозиторий ограничен событиями запуска рабочего процесса. Запрос в службу поддержки
Очередь рабочих процессовВыполнение рабочего процесса в очереди500 рабочих процессов выполняется / 10 секундКогда ограничение достигнуто, рабочий процесс запускается, который должен быть активирован событиями веб-перехватчика, будет заблокирован и не будет помещен в очередь. Повторно используемые рабочие процессы рассматриваются как единая сущность. Например, выполнение с 30 повторно используемыми рабочими процессами считается 1 в этом экземпляре.
Выполнение рабочего процессаМатрица заданий256 заданий и выполнения рабочего процессаМатрица заданий может создавать максимум заданий на выполнение рабочего процесса. Это ограничение применяется как к GitHub, размещенным, так и к локальным запускам.
Самостоятельное размещениеРегистрация бегуна1500 runners / 5 минут / репозиторий/org/enterpriseЗапуски можно зарегистрировать для каждого репозитория, организации или предприятия. Запрос в службу поддержки
Самостоятельное размещениеRunners на группу runner10 000 бегуновRunners зарегистрированы одновременно для каждой группы runner.
Самостоятельное размещениеВремя выполнения задания5 днейКаждое задание в рабочем процессе может выполняться до 5 дней выполнения. Если задание достигает этого предела, задание завершается и завершается сбоем.
Самостоятельное размещениеВремя очереди заданий24 часаЗадание может находиться в очереди в течение 24 часов до автоматического отмены.
Все GitHub-размещенные в среде runnersПараллелизм заданийРазныеОзнакомьтесь с ограничениями параллелизма заданий для GitHub, размещенных в runner. Запрос в службу поддержки
Все GitHub-размещенные в среде runnersВремя выполнения задания6 часовКаждое задание в рабочем процессе может выполняться до 6 часов выполнения. Если задание достигает этого предела, задание завершается и завершается сбоем.
Все GitHub-размещенные в среде runnersОграничения хранилищаРазныеДополнительные сведения см. в разделе "Ограничения хранилища" для всех GitHub, размещенных в среде runner.
Более крупные бегуныОграничение параллелизма для каждого бегунаЗависит от типа runnerУстанавливается при настройке бегуна. Обычно 1000 max for Linux CPU runners, но зависит от типа. Ознакомьтесь с ограничениями параллелизма заданий для GitHub, размещенных в runner. Запрос в службу поддержки
Более крупные бегуныОграничения статических IP-адресов10 IP10 IP на предприятие и организацию. Запрос в службу поддержки
Более крупные бегуныМасштабирование частных IP-адресов для внедрения виртуальных сетейБуфер 30 %Вам нужен буфер, чтобы обеспечить максимальное число ожидаемых параллелизмов заданий. См . сведения о масштабировании частных IP-адресов для внедрения виртуальных сетей на более крупных запусках. Настраиваемая виртуальная сеть Azure
Кэширование зависимостейЗагрузки в минуту200 в минутуКаждый репозиторий ограничен 200 загрузками кэша в минуту. Если этот лимит превышается, последующие попытки загрузки кэша будут неудачными, пока лимит скорости не сбросится.
Кэширование зависимостейЗагрузки в минуту1500 в минутуКаждый репозиторий ограничен 1500 загрузками записей кэша в минуту. Если этот лимит превышается, последующие попытки загрузки кэша будут неудачными, пока лимит скорости не сбросается.
Кэширование зависимостейКоличество удалений в минуту400 в минутуКаждый репозиторий ограничен 400 операциями удаления кэша в минуту. Если этот лимит превышается, последующие попытки удаления кэша будут неудачными, пока лимит скорости не сбросается. Каждый запрос на удаление кэша по ключу или ID засчитывается в этот лимит.

Ограничения параллелизма заданий для GitHub,размещенных в runners

GitHub Поддержка может увеличить ограничения параллелизма заданий для GitHub Actions. Чтобы запросить увеличение, отправьте запрос в службу поддержки.

Тип runnerПлан GitHubОбщее количество одновременных заданийМаксимальное количество одновременных заданий macOSМаксимальное число параллельных заданий GPU
Стандартный GitHub-размещенный runnerБесплатно205Нет данных
Стандартный GitHub-размещенный runnerPro405Нет данных
Стандартный GitHub-размещенный runnerГруппа605Нет данных
Стандартный GitHub-размещенный runnerФункции корпоративного уровня50050Нет данных
Более крупный бегунГруппа10005100
Более крупный бегунФункции корпоративного уровня100050100

Примечание.

Максимальное число параллельных заданий macOS используется для стандартных GitHub, размещенных в runners, и GitHub, размещенных в больших запусках.

Ограничения хранилища для всех переменных данных GitHub, размещенных в среде runner

GitHub Поддержка не может увеличить ограничения хранилища для GitHub Actions.

PlanХранилище артефактовМинуты (в месяц)Хранилище кэша
GitHub Free500 МБ2 00010 ГБ
GitHub Pro1 ГБ3,00010 ГБ
GitHub Free для организаций500 МБ2 00010 ГБ
GitHub Team2 ГБ3,00010 ГБ
GitHub Enterprise Cloud50 ГБ50,00010 ГБ

Для получения информации о лимитах хранения кэша и способах их увеличения см. раздел «Лимиты использования и политика выселения».

Масштабирование частных IP-адресов для внедрения виртуальных сетей на более крупных запусках

При использовании более крупных модулей выполнения с внедрением виртуальных сетей необходимо определить соответствующий диапазон IP-адресов подсети, для которого рекомендуется добавить буфер к максимальному параллелизму заданий, которое вы ожидаете. Например, если в параметрах запуска конфигурации сети задано максимальное число параллелизмов заданий 300, используйте диапазон IP-адресов подсети, который может содержать по крайней мере 390 модулей выполнения. Обратите внимание, что Azure резервирует 5 IP-адресов в каждой подсети (первые 4 и последние 1), что задает минимальный практический размер подсети в зависимости от требований запуска. Очень небольшие подсети (например, /29 или меньше) могут не предоставлять достаточно доступных адресов для ваших потребностей.

Распространенные ограничения зависимых служб

Ограничения частоты REST API GitHubприменяются к пользователям GitHub Actions, которые обычно попадают:

  •         **Не прошедшие проверку подлинности пользователи**\- данных, которые можно использовать повторно.rest-api.primary-rate-limit-unauthenticated-users %}
    
  •         **Прошедшие проверку подлинности пользователи**\- данных, многократно используемых.rest-api.primary-rate-limit-authenticated-users %}
    
  •         **Установка**\- приложений GitHub для повторного использования данных.rest-api.primary-rate-limit-github-app-installations %}
    
  •         **Приложения \-** OAuth для повторного использования данных.rest-api.primary-rate-limit-oauth-apps %}
    
  •         **ТОКЕН**\- GITHUB данных, многократно используемых.rest-api.primary-rate-limit-github-token-in-actions %}
    
  •         **Ограничения вторичной частоты**\- в дополнение к основным ограничениям скорости GitHub применяют ограничения вторичной частоты, чтобы предотвратить злоупотребление и сохранить API доступным для всех пользователей, они не настраиваются с GHEC. Дополнительные сведения см. в разделе [AUTOTITLE](/rest/using-the-rest-api/rate-limits-for-the-rest-api?apiVersion=2022-11-28#about-secondary-rate-limits).
    

Ограничение скорости Docker Hub для GitHub Actions

  •         **GitHub-hosted runners, вытягивающие публичные изображения:** Лимит тарифов Docker Hub не применяется.
    
  •         **GitHub-hosted runners, вытягивающие приватные изображения:** Извлечение приватных изображений с Docker Hub подчиняется ограничению скорости.
    
  •         **Самостоятельные бегуны с публичными или приватными изображениями:** Извлечение изображений из Docker Hub всегда подчиняется ограничению скорости.