注: GitHub ホステッド ランナーは、現在 GitHub Enterprise Server でサポートされていません。 GitHub public roadmap で、今後の計画的なサポートの詳細を確認できます。
はじめに
このガイドでは、コードをテストするGitHub Actionsワークフローを作成して、それをGitHub Packagesに公開します。
パッケージを公開する
-
GitHub に新しいリポジトリを作成し、ノードに
.gitignore
を追� します。 詳細については、「新しいリポジトリの作成」を参照してく� さい。 -
ローカル コンピューターにリポジトリを複製します。
$ git clone https://YOUR-HOSTNAME/YOUR-USERNAME/YOUR-REPOSITORY.git $ cd YOUR-REPOSITORY
-
index.js
ファイルを作成し、「Hello world!」を表示する基本的なアラートを作成します。JavaScript console.log("Hello, World!");
-
npm パッケージを
npm init
で初期化します。 パッケージ初期化ウィザードで、@YOUR-USERNAME/YOUR-REPOSITORY
の形式で名前を入力し、テスト スクリプトをexit 0
に設定します。 これにより、パッケージの情� �が付いたpackage.json
ファイルが生成されます。$ npm init ... package name: @YOUR-USERNAME/YOUR-REPOSITORY ... test command: exit 0 ...
-
npm install
を実行してpackage-lock.json
ファイルを生成し、変更をコミットして GitHub にプッシュします。$ npm install $ git add index.js package.json package-lock.json $ git commit -m "initialize npm package" $ git push
-
.github/workflows
ディレクトリを作成します。 そのディレクトリ内に、release-package.yml
という名前のファイルを作成します。 -
以下の内容の YAML を
release-package.yml
ファイルにコピーします。YOUR-HOSTNAME
をエンタープライズの名前に置き換えてく� さい。YAML name: Node.js Package on: release: types: [created] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v2 with: node-version: 16 - run: npm ci - run: npm test publish-gpr: needs: build runs-on: ubuntu-latest permissions: packages: write contents: read steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v2 with: node-version: 16 registry-url: https://npm.YOUR-HOSTNAME.com/ - run: npm ci - run: npm publish env: NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
-
NPMに、以下のいずれかの方法を使ってどのスコープ及びリポジトリにパッケージを公開するかを伝えます。
.npmrc
ファイルを作成することによって、リポジトリのための NPM 設定ファイルを以下の内容でルート ディレクトリに追� する:@YOUR-USERNAME:registry=https://npm.pkg.github.com
package.json
ファイルを編集し、publishConfig
キーを次のように指定する:"publishConfig": { "@YOUR-USERNAME:registry": "https://npm.pkg.github.com" }
-
コミットして変更をGitHubにプッシュします。
$ git add .github/workflows/release-package.yml # Also add the file you created or edited in the previous step. $ git add .npmrc or package.json $ git commit -m "workflow to publish package" $ git push
-
作成したワークフローは、リポジトリに新しいリリースが作成されるたびに実行されます。 テストにパスすると、パッケージはGitHub Packagesに公開されます。
これを試すには、リポジトリの [Code] タブに移動し、新しいリリースを作成します。 詳細については、「リポジトリのリリースを管理する」を参照してく� さい。
公開したパッケージを表示する
公開したすべてのパッケージは、見ることができます。
- で、リポジトリのメイン ページへ移動します。 1. ファイルの一覧の右側にある [パッケージ] をクリックします。 1. 表示させたいパッケージの名前をクリックしてく� さい。
公開したパッケージをインストールする
これでパッケージを公開できたので、プロジェクト全体で依存関係として利用できます。 詳細については、「npm レジストリの利用」を参照してく� さい。
次の手� �
ここで追� した基本的なワークフローは、リポジトリ内に新しいリリースが作成されるたびに実行されます。 た� しこれは、GitHub Packagesでできることの手始めにすぎません。 単一のワークフローで複数のレジストリにパッケージを公開する、ワークフローをトリガーしてマージされたプルリクエストなどさまざまなイベントで実行する、コンテナを管理するなど、いろいろなことができます。
GitHub PackagesとGitHub Actionsを組み合わせることで、プリケーション開発プロセスのほぼすべての要� を自動化するために役立ちます。 使い始める準備はできていますか。 以下は、GitHub PackagesおよびGitHub Actionsで次のステップへ進むために役立つリソースです。
- GitHub Packages についての詳細なチュートリアル、「GitHub Packages を学ぶ」
- GitHub Actions の詳細なチュートリアル、「GitHub Actions を学ぶ」
- 特定のユース ケースと例のための「GitHub Packages レジストリの利用」