作者:玩玩ftgcriug | 来源:互联网 | 2023-01-29 20:36
如果需要使用npm安装私有存储库,则NPM_TOKEN
需要设置环境变量.
NPM_TOKEN=00000000-0000-0000-0000-000000000000
我在gitlab管道中的构建阶段需要安装一个私有存储库.因此我把这个NPM_TOKEN
秘密变量放在我的gitlab pipeline
设置中.
我目前的gitlab-ci配置:
image: x/node
build_job:
script:
- printenv NPM_TOKEN
- npm i @x/test
docker图像就是我设置的.npmrc
文件:
FROM node:latest
COPY .npmrc .
我.npmrc
在同一目录中的位置:
//registry.npmjs.org/:_authToken=${NPM_TOKEN}
我通过以下方式尝试了docker图像:
run -it myimage bash
export NPM_TOKEN=...
npm i @x/test
这有效,私有包已安装.
但是在gitlab管道上它找不到包(404).当作业运行时,我可以清楚地看到NPM_TOKEN
正在打印的env变量.所以我不知道发生了什么事.
1> Ced..:
我把gitlab-ci更改为:
image: dasnoo/node
build_job:
script:
- printenv NPM_TOKEN
- npm config set //registry.npmjs.org/:_authToken ${NPM_TOKEN}
- npm i @dasnoo/testpriv
它的工作原理.不是为什么我不得不这样做