Примечание. В GitHub Enterprise Server в настоящее время не поддерживаются средства выполнения тестов, размещенные в GitHub. Дополнительные сведения о планируемой поддержке в будущем см. в GitHub public roadmap.
Сведения о GitHub Actions на GitHub Enterprise Server
В этой статье объясняется, как администраторы сайта могут настроить GitHub Enterprise Server для использования GitHub Actions.
GitHub Actions по умолчанию не включен для GitHub Enterprise Server. Вам нужно будет определить, имеет ли экземпляр достаточно ресурсов ЦП и памяти для обработки нагрузки из GitHub Actions без потери производительности и, возможно, увеличить эти ресурсы. Вам также потребуется решить, какой поставщик хранилища будет использоваться для хранилища BLOB-объектов, необходимого для хранения артефактов и кэшей, созданных рабочими процессами. Затем вы можете включить GitHub Actions для вашего предприятия, управлять правами доступа и добавлять локальные средства выполнения для выполнения рабочих процессов.
Прежде чем приступать к работе, необходимо составить план внедрения GitHub Actions в организации. Дополнительные сведения см. в разделе Внедрение GitHub Actions на предприятии.
При переносе предприятия на GitHub Actions от другого поставщика необходимо учитывать дополнительные аспекты. Дополнительные сведения см. в разделе Миграция предприятия на GitHub Actions.
Ознакомиться с требованиями к оборудованию
Ресурсы ЦП и памяти, доступные для ваш экземпляр GitHub Enterprise Server, определяют количество средств выполнения, которые можно настроить без потери производительности. Для запуска GitHub требуется не менее 8 виртуальных ЦП и 64 ГБ памяти для запуска GitHub Actions.
Максимальное количество подключенных средств выполнения тестов, выполняемых без потери производительности, зависит от таких факторов, как длительность задания, использование артефактов, количество репозиториев, выполняющих Actions, и объема выполняемых экземпляром других работ, не связанных с Actions. Внутреннее тестирование на сайте GitHub демонстрирует целевые показатели производительности для GitHub Enterprise Server в диапазоне конфигураций ЦП и памяти.
Число виртуальных ЦП | Память | Максимальное количество подключенных средств выполнения тестов |
---|---|---|
8 | 64 ГБ | Средств выполнения тестов: 740 |
32 | 160 ГБ | Средств выполнения тестов: 2700 |
96 | 384 ГБ | Средств выполнения тестов: 7000 |
GitHub измерил максимальное количество подключенных средств выполнения тестов с использованием нескольких репозиториев с продолжительностью задания около 10 минут и передачей артефактов размером 10 МБ. Производительность может отличаться в зависимости от общих уровней активности в экземпляре.
Note
- Начиная с GitHub Enterprise Server 3.6, GitHub документирует подключенные средства выполнения тестов, а не параллельные задания. Подключенные средства выполнения тестов представляют собой большинство средств выполнения тестов, которые можно подключить и ожидать для использования. Следует также отметить, что подключение большего числа средств выполнения тестов, чем можно ожидать для использования, может негативно повлиять на производительность.
- Начиная с GitHub Enterprise Server 3.5, для внутреннего тестирования GitHub используются ЦП 3-го поколения, чтобы лучше отразить типичную конфигурацию пользователя. Это изменение ЦП представляет собой небольшую часть изменений целевых показателей производительности в этой версии GitHub Enterprise Server.
Если вы планируете включить GitHub Actions для пользователей существующего экземпляра, проверьте уровни активности пользователей и автоматизаций в экземпляре и убедитесь, что вы подготовили достаточный ресурс ЦП и памяти для пользователей. Дополнительные сведения о мониторинге емкости и производительности GitHub Enterprise Serverсм. в разделе "Мониторинг экземпляра".
Дополнительные сведения о минимальных требованиях к оборудованию для ваш экземпляр GitHub Enterprise Serverсм. в рекомендациях по оборудованию для платформы экземпляра.
Дополнительные сведения о настройке ресурсов для существующего экземпляра см. в разделе[ "AUTOTITLE" и "Увеличение емкости хранилища](/admin/enterprise-management/updating-the-virtual-machine-and-physical-resources/increasing-cpu-or-memory-resources)".
При необходимости можно ограничить потребление ресурсов на ваш экземпляр GitHub Enterprise Server путем настройки ограничения скорости для GitHub Actions. Дополнительные сведения см. в разделе Настройка ограничений скорости.
Требования к внешнему хранилищу
Чтобы включить GitHub Actions в GitHub Enterprise Server, необходимо иметь доступ к внешнему хранилищу BLOB-объектов.
GitHub Actions использует внешнее хранилище BLOB-объектов для хранения данных, созданных рабочими процессами. Сохраненные данные включают журналы рабочих процессов, кэши и артефакты сборки, отправленные пользователем. Объем хранилища зависит от использования GitHub Actions. Поддерживается только одна конфигурация внешнего хранилища, и вы не можете одновременно использовать несколько поставщиков хранилища.
Все остальные данные GitHub Actions , такие как файлы рабочего процесса в структуре файла репозитория, хранятся в томе хранилища данных для ваш экземпляр GitHub Enterprise Server.
GitHub Actions поддерживает следующие поставщики хранилищ.
- Хранилище BLOB-объектов Azure
- Amazon S3
- Google Cloud Storage
- Кластер MinIO, совместимый с S3
Note
Это единственные поставщики хранилища, которые GitHub поддерживают и могут оказывать помощь.
Существуют другие продукты хранения, совместимые с API S3, которые партнеры GitHub самостоятельно проверяются как работа с GitHub Actions на GitHub Enterprise Server. Дополнительные сведения см. в репозитории GHES служба хранилища Партнеров.
Для продуктов хранения, проверенных с помощью программы партнерства по технологии GitHub , поставщик хранилища отвечает за поддержку и документацию по использованию продукта хранилища с GitHub Actions.
Рекомендации по работе с сетями
Если для организации включено GitHub Actions, поддерживаются только прокси-серверы HTTP. Прокси-серверы SOCKS5 и HTTPS не поддерживаются. Дополнительные сведения об использовании прокси-сервера с GitHub Enterprise Serverсм. в разделе "Настройка сервера веб-прокси исходящего трафика".
Включение GitHub Actions с вашим поставщиком хранилища
Выполните одну из приведенных ниже процедур, чтобы включить GitHub Actions с выбранным вами поставщиком хранилища.
- Включение GitHub Actions с хранилищем BLOB-объектов Azure
- Включение GitHub Actions с хранилищем Amazon S3
- Включение GitHub Actions с помощью Google Cloud Storage
- Включение GitHub Actions с хранилищем MinIO
Управление правами доступа для GitHub Actions в вашей организации
Для управления доступом к GitHub Actions вы можете использовать политики. Дополнительные сведения см. в разделе Применение политик для GitHub Actions в вашем предприятии.
Добавление локальных средств выполнения
Примечание. В GitHub Enterprise Server в настоящее время не поддерживаются средства выполнения тестов, размещенные в GitHub. Дополнительные сведения о планируемой поддержке в будущем см. в GitHub public roadmap.
Для запуска рабочих процессов GitHub Actions необходимо добавить локальные средства выполнения. Вы можете добавлять локальные средства выполнения на уровне предприятия, организации или репозитория. Дополнительные сведения см. в разделе Добавление локальных средств выполнения.
Управление действиями, которые можно использовать в предприятии
Вы можете управлять действиями, которые пользователи могут использовать в вашем предприятии. Сюда входит настройка GitHub Connect для автоматического доступа к действиям из GitHub.com или синхронизация действий вручную из GitHub.com.
Дополнительные сведения см. в разделе Сведения об использовании действий в организации.
Общее усиление безопасности для GitHub Actions
Дополнительные сведения о методах безопасности для GitHub Actionsсм. в разделе "Защита системы безопасности для GitHub Actions".
Зарезервированные имена
При включении GitHub Actions для предприятия создаются две организации, github
и actions
. Если ваше предприятие уже использует имя организации github
, то вместо него будет использоваться github-org
(или github-github-org
, если github-org
тоже используется). Если ваше предприятие уже использует имя организации actions
, то вместо него будет использоваться github-actions
(или github-actions-org
, если github-actions
тоже используется). После включения действий вы больше не сможете где-либо использовать эти имена.