注: GitHub Packages は、GitHub AE では現在ベータ段階です。
GitHub Packages について
GitHub Packages は、コンテナーやその他の依存関係を含むパッケージをホストおよび管理するためのプラットフォームです。 GitHub Packagesは、ソースコードとパッケージを 1 か所にまとめ、統合された権限管理を提供し、GitHub AE 上でのソフトウェア開発を一元化できるようにします。
GitHub Packagesは、GitHub AE API、GitHub Actions、webhookと統合して、コード、CI、デプロイメントのソリューションを含むエンドツーエンドのDevOpsワークフローを作成できます。
GitHub Packagesは、nmp、RubyGems、Apache Maven、Gradle、Docker、NuGetといった、広く使われているパッケージマネージャーに対する様々なパッケージレジストリを提供しています。 GitHub Packages がサポートするさまざまなパッケージ レジストリについての詳しい情報は、「GitHub Packages レジストリの操作」をご覧ください。
GitHub AEでは、ライセンスのようなメタデータやパッケージのREADMEを表示したり、統計をダウンロードしたり、バージョン履歴を見たりできます。 詳しくは、「パッケージの表示」をご覧ください。
パッケージの権限と可視性の概要
アクセス許可 | それぞれのパッケージは、ホストされているリポジトリの権限を継承します。 たとえば、リポジトリの読み取り権限を持つ人であれば、プロジェクトに依存関係としてパッケージをインストールでき、書き込み権限を持つ人であれば、新しいパッケージバージョンを公開できます。 |
視程 | インターナルリポジトリで (インターナルパッケージ) パッケージを公開して、Enterpriseの全員と、もしくはプライベートリポジトリ (プライベートパッケージ) でパッケージを公開して、コラボレータあるいは Organization と共有できます。 |
サポートされているクライアントとフォーマット
GitHub Packagesは、パッケージのバージョンの公開とインストールに、すでにおなじみのネイティブのパッケージツールコマンドを使います。
パッケージレジストリのサポート
Language | 説明 | パッケージの形式 | パッケージクライアント |
---|---|---|---|
JavaScript | Nodeのパッケージマネージャー | package.json | npm |
Ruby | RubyGemsパッケージマネージャー | Gemfile | gem |
Java | Apache Mavenのプロジェクト管理及び包括的ツール | pom.xml | mvn |
Java | Java用のGradleビルド自動化ツール | build.gradle または build.gradle.kts | gradle |
.NET | .NET用のNuGetパッケージ管理 | nupkg | dotnet CLI |
該当なし | Dockerコンテナ管理プラットフォーム | Dockerfile | Docker |
GitHub Packages と使用するようにパッケージ クライアントを構成する方法について詳しくは、「GitHub Packages レジストリの操作」をご覧ください。
GitHub Packages への認証を行う
非公開パッケージ、内部パッケージ、公開パッケージを発行、インストール、削除するには、アクセス トークンが必要です。
personal access token を使って、GitHub Packages または GitHub AE API の認証を受けることができます。 personal access token を作成するときは、必要に応じてさまざまなスコープをトークンに割り当てることができます。 personal access token のパッケージ関連のスコープについて詳しくは、「GitHub パッケージのアクセス許可について」をご覧ください。
GitHub Actionsワークフロー内でGitHub Packagesレジストリに認証を受けるには、以下の方法が使えます。
GITHUB_TOKEN
では、ワークフロー リポジトリに関連付けられているパッケージを発行します。read:packages
以上のスコープが設定された personal access token では、他のプライベート リポジトリ (GITHUB_TOKEN
ではアクセスできない) に関連付けられているパッケージがインストールされます。
GitHub Actions ワークフローで使用される GITHUB_TOKEN
の詳細については、「ワークフローで認証する」を参照してください。
パッケージを管理する
パッケージの削除は、GitHub AE のユーザー インターフェイス GraphQL を使ってプライベート パッケージのバージョンを削除することができます。
GraphQL API を使ってプライベート パッケージに対するクエリや削除を行う場合、GitHub Packages の認証に使うのと同じ personal access token を使わなければなりません。
詳しくは、「パッケージを削除および復元する」および「GraphQL での呼び出しの作成」をご覧ください。
webhookを設定して、パッケージの公開や更新といったパッケージ関連のイベントにサブスクライブできます。 詳細については、「package
webhook イベント」を参照してください。
サポートへの問い合わせ
GitHub Packages のサポートが必要な場合は、サイト管理者にお問い合わせください。