Примечание. GitHub Packages сейчас находится в бета-версии для GitHub AE.
Сведения о GitHub Packages
GitHub Packages — это платформа для размещения пакетов, включая контейнеры и другие зависимости, и управления ими. GitHub Packages объединяет исходный код и пакеты в одном месте, чтобы предоставить возможность интегрированного управления разрешениями, что позволяет централизировать разработку программного обеспечения в GitHub AE.
Вы можете интегрировать GitHub Packages с API GitHub AE, GitHub Actions и веб-перехватчиками, чтобы создать комплексный рабочий процесс DevOps, включающий решения для разработки кода, непрерывной интеграции и развертывания.
GitHub Packages предлагает различные реестры пакетов для часто используемых диспетчеров пакетов, таких как npm, RubyGems, Apache Maven, Gradle, Docker и NuGet. Дополнительные сведения о различных реестрах пакетов, поддерживаемых GitHub Packages, см. в разделе Работа с реестром GitHub Packages.
Вы можете посмотреть файл сведений пакета, а также метаданные, такие как лицензирование, статистику скачиваний, журнал версий, и многое другое для GitHub AE. Дополнительные сведения см. в разделе Просмотр пакетов.
Общие сведения о разрешениях пакета
Каждый пакет наследует разрешения репозитория, в котором размещен пакет.
Например, любой пользователь с разрешениями на чтение для репозитория может установить пакет в качестве зависимости в проекте, а любой пользователь с разрешениями на запись может опубликовать новую версию пакета.
Обзор видимости пакета
Вы можете публиковать пакеты во внутреннем репозитории (внутренние пакеты), чтобы совместно использовать их со всеми пользователями вашего предприятия, или в частном репoзитории (частные пакеты), чтобы совместно использовать их с участниками совместной работы или с организацией.
Поддерживаемые клиенты и форматы
GitHub Packages использует собственные команды инструментов для работы пакетами, с которыми вы уже знакомы, для публикации и установки версий пакетов.
Поддержка реестров пакетов
Язык | Описание | Формат пакета | Клиент пакета |
---|---|---|---|
JavaScript | Диспетчер пакетов узла | package.json | npm |
Ruby | Диспетчер пакетов RubyGems | Gemfile | gem |
Java | Средство управления и анализа проектов Apache Maven | pom.xml | mvn |
Java | Средство автоматизации сборки Gradle для Java | build.gradle или build.gradle.kts | gradle |
.NET | Управление пакетами NuGet для .NET | nupkg | dotnet CLI |
Н/Д | Управление контейнерами Docker | Dockerfile | Docker |
Дополнительные сведения о настройке клиента пакета для использования с GitHub Packages см. в разделе Работа с реестром GitHub Packages.
Проверка подлинности в GitHub Packages
Для публикации, установки и удаления частных, внутренних и общедоступных пакетов требуется маркер доступа.
Вы можете использовать personal access token для проверки подлинности в GitHub Packages или GitHub AE. При создании personal access token вы можете назначить маркеру различные области в зависимости от ваших потребностей. Дополнительные сведения об областях, связанных с пакетами, для personal access token см. в разделе Сведения о разрешениях для пакетов GitHub.
Для проверки подлинности в реестре GitHub Packages в рабочем процессе GitHub Actions можно использовать следующее:
GITHUB_TOKEN
для публикации пакетов, связанных с репозиторием рабочих процессов.- personal access token с по крайней мере
read:packages
областью для установки пакетов, связанных с другими частными репозиториями (которыеGITHUB_TOKEN
не могут получить доступ).
Дополнительные сведения об GITHUB_TOKEN
использовании в рабочих процессах GitHub Actions см. в разделе Автоматическая проверка подлинности токенов.
Управление пакетами
Пакет можно удалить в пользовательском интерфейсе GitHub AE . Вы можете использовать GraphQL для удаления версии частного пакета.
При использовании API GraphQL для запроса и удаления частных пакетов необходимо использовать тот же personal access token, который используется для проверки подлинности в GitHub Packages.
Дополнительные сведения см. в разделах "Удаление и восстановление пакета" и "Формирование вызовов с помощью GraphQL".
Вы можете настроить веб-перехватчики, чтобы подписаться на события, связанные с пакетом, например на публикацию или обновление пакета. Дополнительные сведения см. в разделе События и полезные данные веб-перехватчика.
Обращение в службу поддержки
Если вам нужна поддержка для GitHub Packages, обратитесь к своим администраторам.