Github PackagesでPrivateなNPMパッケージを公開する
特定の組織、個人アカウント内でのみ利用できるNPMパッケージをGithub Packagesを利用して作成する。Github Packagesを利用して作成する。
手順
package.jsonを設定
パッケージとして公開するために以下の項目を追加する。
{
"name": "@<ユーザー名>/<リポジトリ名>",
"version": "0.0.1",
"publishConfig": {
"@<ユーザー名>:registry": "https://npm.pkg.github.com/<@ユーザー名",
},
...
}
publishConfigを設定するほかに.npmrcを利用して設定する方法もある。publishConfigを設定するほかに.npmrcを利用して設定する方法もある。
Github Actionsのワークフローを作成
以下のようにrelease.yamlを設定した。新しくリリースを作成するとPackageを公開してくれる。
name: Release to GitHub Package Registry
on:
release:
types: [created]
jobs:
publish-gpr:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 21
registry-url: https://npm.pkg.github.com/
- run: npm install
- run: npm run build
- run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
パッケージの利用
Privateなパッケージを利用する場合、パッケージの設定からアクセス可能なレポジトリを指定してあげる必要がある。
また.npmrcに以下のように記述し、Personal Access Tokenを利用してGithub Packageを取得できるようにする。
Personal Access Tokenにはread_packageの権限を付与。
@<ユーザー名>:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=${PERSONAL_ACCESS_TOKEN}
参考
GitHub Packagesを使用してprivateなnpmパッケージとして公開する GitHub Packages の概要 - GitHub Docs モデルの型定義ファイル(TypeScript)を共有モジュール化してGitHub Packages(npmレジストリ)で配信する 型定義リポジトリをGitHub Packagesで社内限定公開する(yarnでもnpmでも) #Node.js - Qiita npmレジストリの利用 - GitHub Docs
関連ページ
利用しているObsidianプラグイン
現在Obsidian 💎にインストールして利用しているObsidian コミュニティプラグイン | プラグイン名 | 詳細 | | ------------------------ | --------------------------...
Quartzを利用してObsidian Publishを代替する
Obsidian PublishをQuartzに代替して出費を抑えたい。 セットアップ 公式ドキュメントに記載の通りセットアップを行なっていく。 ` git clone https://github.com/jackyzha0/quartz...
Obsidianでタスク管理をする
諸々の管理をObsidian 💎|obsidianにまとめるためにタスク管理をAkiflowからObsidian 💎|obsidianへ移した。 前提 既存で利用しているタスク管理ツールは以下の通り。 - Akiflow: 個人のタスク...
Github Copilot
GithubとOpenAIが共同で開発提供しているコーディング支援サービス。 コードの自動生成や提案を行いより高品質なコードを書くのを支援する。 GitHub Copilot · Your AI pair programmer · GitH
Claude Code Actions
Githubワークフローを通してClaude Codeを実行できる機能。PRレビューから機能実装まで対応してくれる GitHub Actions - Anthropic
Development 💻
+ このページについて 開発に関連するメモをリンクする MOC 関連 - プログラミング言語 - フロントエンド - バックエンド - インフラ - IDE - セキュリティ - デザインパターン 関連サービス - Github - Goo...