CI环境:一行命令登录npm仓库
写在前边
简单介绍下:如何在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仓库。我们下次更新再见。
本文作者:东北小狐狸
本文链接:https://www.cnblogs.com/hellxz/p/use_one_command_login_npm_registry.html
版权声明:本作品采用自由转载-非商用-非衍生-保持署名 (CC BY-NC-ND 3.0)许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
2018-02-18 【学习笔记】FreeMarker 之于Servlet与Stuts2的应用
2018-02-18 【学习笔记】初识FreeMarker简单使用