【发布时间】:2017-07-11 23:33:23
【问题描述】:
如果需要install private repositories with 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 变量。所以不知道怎么回事。
【问题讨论】:
标签: docker npm gitlab gitlab-ci