CI环境:一行命令登录npm仓库

本文介绍了如何在Jenkins等CI环境中,通过authToken避免交互式登录,实现npm一键登录私有仓库。首先设置npm仓库,然后交互式登录获取authToken,最后在脚本中设置环境变量,通过一行命令完成登录。这种方式简化了在自动化构建流程中处理npm仓库认证的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

写在前边

简单介绍下:如何在Jenkins等CI环境中使用Npm访问需要认证的仓库。

使用 npm login 交互式的输入用户名、密码、邮箱的方式不适合CI环境,使用延迟输入、管道重定向、expect 命令等方式,需要对安装软件或者在仓库响应慢的情况下,也容易登录失败。

本文将带你使用 authToken 的方式,一行命令直接登录指定npm仓库。

获取authToken

authToken 是 npm 用户登陆仓库时,由npm仓库生成返回给客户端,记录到客户端的 ~/.npmrc

首先,设置 npm 仓库

npm set registry <registry-url>

交互式登录仓库,输入用户名、密码、邮箱

npm login

登录完成后,打开用户目录的 .npmrc,Linux在 ~/.npmrc, Windows在 C:\Users\<用户名>\.npmrc中,找到 <registry-url> 对应仓库地址,如图

在这里插入图片描述

仓库认证地址前协议被去除,即以 // 开头

将上图中 _authToken= 后引号中间的字符串复制,此为登录用户的 认证token

修改脚本中登录npm仓库命令

以 Jenkinsfile 中脚本举例,其它类似。

npm config set //<registry-url>/:_authToken <authToken>

在这里插入图片描述

上图的 ${NPM_AUTH_TOKEN} 在脚本中环境变量处定义,取的 secret text 凭据串

通过以上简单的方式即可完成一行命令登录npm仓库。我们下次更新再见。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东北小狐狸-Hellxz

请作者喝杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值