-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Description
- I'd be willing to implement this feature (contributing guide)
- This feature is important to have in this repository; a contrib plugin wouldn't do
Describe the user story
I just spent another hour trying to publish my package with yarn 4 instead of npm, because I want workspace: cross-references in package.json to be properly handled.
With npm I had:
package.json:
"publishConfig": {
"@earshinov:registry": "https://private-registry/packages/npm/"
}
.npmrc:
//private-registry/packages/npm/:_authToken=$CI_JOB_TOKEN
With Yarn, I had to figure out:
-
Does Yarn look into
.npmrc? Apparently, the answer is Yes for Yarn Classic and No for Yarn Berry (or maybe they just don't handle these particular kinds of keys). -
How do I give the auth token then? Apparently, that's
yarn config set _authToken "$CI_JOB_TOKEN"for Yarn classic (found on GitHub) andyarn config set 'npmRegistries["//private-registry"].npmAuthToken' "$CI_JOB_TOKEN"for Yarn Berry (thanks for this useful example inyarn config setdocs, by the way!). -
Now I am still facing
YN0033: No authentication configured for requestwhen runningyarn npm publish, and have no idea if I misconfigured the token or the registry URL. Andyarn npm publishhas no verbosity flags.
If yarn npm publish printed the registry URL it is accessing, it would help.
Describe the solution you'd like
A log line similar to YN00xx: Publishing to npm.example.com
Describe the drawbacks of your solution
None?
Describe alternatives you've considered
- Let developers continue spending time to figure out what's wrong with their project configuration. May be a feasible option, because apparently I am the only one having problems with it as I don't see any similar reports.