Skip to main content

Об упаковке с помощью GitHub Actions

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

Упаковка в рабочие процессы непрерывной интеграции

Этап упаковки — это обычная часть рабочего процесса непрерывной интеграции или непрерывной поставки. Создание пакета в конце рабочего процесса непрерывной интеграции может помочь во время проверок кода по запросу на вытягивание.

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

Например, рабочий процесс непрерывной интеграции для проекта Java может запускать mvn package для создания файла JAR. Или рабочий процесс CI для приложения Node.js может создавать контейнер Docker.

Теперь, при проверке запроса на вытягивание вы сможете просмотреть рабочий процесс и загрузить созданный артефакт.

Снимок экрана: раздел "Артефакты" запуска рабочего процесса. Имя артефакта, созданного запуском, "артефактом", выделено темно-оранжевым контуром.

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

Рабочие процессы для публикации пакетов

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

  • Публикация пакетов в GitHub Packages GitHub Packages может выступать в качестве службы размещения пакетов для многих типов пакетов. Вы можете поделиться своими пакетами со всеми на GitHub, или выбрать частные пакеты, чтобы поделиться с участниками совместной работы или организацией. Дополнительные сведения см. в разделе Введение в GitHub Packages.

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

  • Публикация пакетов в реестре пакетов для многих проектов выполняется при каждом выпуске новой версии проекта в реестре пакетов. Например, проект, создающий файл JAR, может загружать новые выпуски в репозиторий Maven Central. Или проект .NET может создать пакет NuGet и отправить его в коллекцию NuGet.

    Это можно автоматизировать, создав рабочий процесс, который публикует пакеты в реестре пакетов при каждом создании выпуска. Дополнительные сведения см. в разделе Управление выпусками в репозитории.

Дополнительные материалы