Goal
I have manually published an open source lib to registry.npmjs.org and I want future releases to be automatically published using GitHub Actions. I have no prior experience with GitHub actions.
What I have done so far
I have put the standard GitHub action into the repository which GitHub provides for that purpose (unchanged). In its last line, it takes the automation token from npmjs.com which I have defined on the repo as environment secret NPM_TOKEN
. It shows up in the repo's secrects page.
The error that I face
Run npm publish
...
npm ERR! code ENEEDAUTH
npm ERR! need auth This command requires you to be logged in.
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:
npm ERR! /home/runner/.npm/_logs/2022-01-08T00_20_52_834Z-debug.log
Error: Process completed with exit code 1.
Despite extensive web search, I do not understand
- is there a way to verify that the automation token is picked up at all?
- why does npm publish require
npm adduser
, does it indicate that the automation token has not been properly picked up? After all, the action is executed on a CI node on which I couldn'tnpm login
. And thenpm-publish.yml
or its documentation shows no hint that user details need to be provided for authentication.