Пакеты GitHub для пакетов кода
В предыдущем уроке вы узнали, как использовать GitHub Actions для создания и публикации образов контейнеров.
В этом уроке мы рассмотрим другие пакеты, поддерживаемые пакетами GitHub. Пакеты GitHub работают с инструментами экосистемы текущего проекта: npm для пакетов npm, nuget.exe или dotnet CLI для пакетов NuGet и т. д.
Проверка подлинности в пакетах GitHub
Способ проверки подлинности в диспетчере пакетов зависит от экосистемы проекта. Независимо от того, с какой экосистемой вы работаете, вам потребуется три фрагмента информации:
- Имя пользователя GitHub
- Личный маркер доступа
- Точка доступа пакетов GitHub для вашей экосистемы пакетов
Создать персональный токен доступа
Для установки, публикации или удаления пакета требуется маркер доступа. При использовании диспетчера пакетов необходимо создать личный маркер доступа (PAT). Вы можете создать PAT с помощью параметров профиля.
Предупреждение
Относитесь к токенам как к паролям и держите их в секрете.
Вход в пакеты GitHub
Перед публикацией или установкой пакетов из пакетов GitHub необходимо пройти проверку подлинности в диспетчере пакетов. Конечная точка будет выглядеть как https://PACKAGE_TYPE.pkg.github.com/OWNER/REPOSITORY
, где PACKAGE_TYPE
— это тип используемой экосистемы пакетов.
В следующей таблице показана команда для выполнения аутентификации в GitHub Packages в зависимости от экосистемы вашего пакета.
Экосистема пакетов | Командная строка для проверки подлинности в пакете GitHub |
---|---|
NuGet | dotnet nuget add source https://nuget.pkg.github.com/OWNER/index.json -n github -u OWNER -p [Your PAT Token] |
npm | bash npm login --registry=https://npm.pkg.github.com |
RubyGems | echo ":github: Bearer GH_TOKEN" >> ~/.gem/credentials |
Maven & Gradle | Во время отправки можно выполнить прямую аутентификацию. |
Если вы хотите узнать больше о том, как использовать пакеты GitHub в среде вашего проекта, вы можете ознакомиться с документацией.
Установка пакета
При проверке подлинности вы можете легко использовать опубликованные пакеты в проектах. Каждая домашняя страница пакета показывает команду для выполнения в зависимости от среды проекта.
Управление пакетами
Пакеты GitHub предлагают несколько способов управления жизненным циклом пакетов и рабочими процессами.
Пакеты GitHub можно управлять с помощью API GitHub и API GraphQL. Эти API позволяют поддерживать сценарии расширенной интеграции. Например, с помощью вебхука GitHub вы можете запустить код при публикации нового пакета. Представьте, что вы являетесь членом проекта с открытым исходным кодом. С помощью вебхуков вы можете автоматически опубликовать новый твит или запись блога при публикации нового пакета.
Вы также можете использовать GitHub Actions для автоматизации управления пакетами. С помощью действия delete-package-versions вы можете автоматически обрезать старую версию пакетов при публикации новой версии.