Github Packages に npm パッケージを非公開で登録する
package.json を修正して Github Packagesにパッケージを登録できるように設定する
nameを「@ユーザー名/パッケージ名」に変更
publishConfig.registry を Github Packages用のURLに修正
"name": "@ユーザー名/パッケージ名",
"publishConfig": {
"registry":"https://npm.pkg.github.com/@ユーザー名"
},
git pushしたらRegistryに登録するようにGithub Actionsの設定を追加
ファイル: .github/workflows/publish-to-private.yaml
name: "publish"
on:
push:
branches:
- main
jobs:
publish-gpr:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: 18.7.0
registry-url: https://npm.pkg.github.com/
scope: '@ユーザー名'
- run: npm install
- run: npm build # ビルドスクリプト
- run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
登録したnpmパッケージをインストールする
インストールしたいプロジェクトの package.json に dependencies を追加
yarn add @ユーザー名/パッケージ名
Githubでパーソナルアクセストークンを発行
スコープは : read:packages
.npmrc を追加
ファイル名: .npmrc
@ユーザー名:registry=https://npm.pkg.github.com/
//npm.pkg.github.com/:_authToken=パーソナルアクセストークン