Open2
GitHub Actions で npm publishする際にハマったこと
-
NODE_AUTH_TOKEN
は Repository secrets として設定するべし
Environment secrets に設定するのは誤り。トークンを参照できないので認証エラーとなる。
- run: npm publish --access public
env:
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}
npm ERR! code ENEEDAUTH
npm ERR! need auth This command requires you to be logged in to https://registry.npmjs.org/
npm ERR! need auth You need to authorize this machine using `npm adduser`
npm ERR! A complete log of this run can be found in: /home/runner/.npm/_logs/2024-04-25T23_05_07_549Z-debug-0.log
Error: Process completed with exit code 1.
- 必ずしも .npmrc を作らなくとも良い
トークンとjobさえ正しく設定できていればpublishできる。
publish-npm:
needs: build
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v4.1.1
- uses: actions/setup-node@v4.0.0
with:
node-version: '20.x'
registry-url: 'https://registry.npmjs.org'
- run: npm ci
- run: npm run build
- run: npm publish --access public
env:
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}