Home » GitHub: использование действий и средств выполнения для GitHub.com

GitHub: использование действий и средств выполнения для GitHub.com

Чтобы улучшить масштабируемость и эффективность доставки программного обеспечения, GitHub принял GitHub Actions как часть своей системы непрерывной интеграции.. В частности, они воспользовались новым Действия более крупных бегунов чтобы запустить 15 000 заданий CI на 150 000 ядер. При этом они также расширили возможности более крупных бегунов для всех своих пользователей.

Это дало нам возможность не только перейти к полнофункциональной системе CI, но также разработать, испытать и использовать системы, которые мы создаем для наших клиентов, а также получить обратную связь, которая поможет создать продукт.

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

Повторно используемые рабочие процессы предназначены для предоставления механизма управления набором рабочих процессов в одном репозитории, чтобы их можно было повторно использовать в других репозиториях. Это было ключом к тому, чтобы сделать процесс добавления CI в репозитории гладким, что в противном случае потребовалось бы создавать новые рабочие процессы для каждого репозитория.

Вместо этого повторное использование результатов предыдущего рабочего процесса представляет собой механизм оптимизации, который предотвращает запуск рабочего процесса, когда содержимое файла репозитория точно такое же, как и при предыдущем запуске рабочего процесса. Это происходит, когда идентификатор дерева Git для текущего коммита совпадает с идентификатором предыдущего коммита. В таких случаях запуск рабочего процесса приведет к точно такому же результату, поэтому вместо его повторного запуска повторно используются результаты предыдущего запуска.

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

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

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

Read more:  Живите у моря и наслаждайтесь собственной сауной, площадкой для барбекю и великолепными садами за 1 350 000 евро - TheJournal.ie

2023-10-07 07:01:37


1696677059
#GitHub #использование #действий #средств #выполнения #для #GitHub.com

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.