Using private packages in a CI/CD workflow

您可以使用身份验证令牌来测试具有连续集成(CI)服务器的专用npm软件包,或将其部署到连续部署(CD)服务器.

Overview

  1. Create a new authentication token
  2. Set the token as an environment variable on the CI/CD server
  3. Create and check in a project-specific .npmrc file

Create a new authentication token

创建一个新的身份验证令牌,该令牌仅用于从CI / CD服务器访问npm软件包.

Continuous integration

默认情况下, npm token create将生成一个具有读写权限的令牌. 生成用于连续集成环境的令牌时,我们建议创建一个只读令牌:

npm token create --read-only

有关创建身份验证令牌(包括列入CIDR白名单的令牌)的更多信息,请参阅" 创建身份验证令牌 ".

Continuous deployment

由于连续部署环境通常涉及部署工件的创建,因此令牌可能需要读取和写入权限,这些权限通过标准令牌创建命令来授予:

npm token create
注意:为了提高安全性,我们建议生成一个CIDR白名单令牌,该令牌只能在特定IP地址范围内使用. 您可以将CIDR白名单与读取和发布令牌或只读令牌一起使用: npm token create --cidr=[list] npm token create --read-only --cidr=[list]示例: npm token create --cidr=192.0.2.0/24 npm token create --cidr=[list] npm token create --read-only --cidr=[list] npm token create --cidr=192.0.2.0/24有关更多信息,请参见" 创建和查看认证令牌 ".

Set the token as an environment variable on the CI/CD server

在CI / CD服务器和开发计算机上将令牌设置为环境变量. 在OSX或Linux中,将此行添加到~/.profile ,用您自己的示例令牌替换示例:

export NPM_TOKEN="00000000-0000-0000-0000-000000000000"

然后刷新您的环境变量:

source ~/.profile

Create and check in a project-specific .npmrc file

将项目特定的.npmrc文件与令牌一起使用,以使用npm安全地验证CI / CD服务器.

  1. 在项目的根目录中,创建一个包含以下内容的自定义.npmrc文件:
//registry.npmjs.org/:_authToken=${NPM_TOKEN}
  1. .npmrc.npmrc文件.

< Revoking authentication tokens | Docker and private modules >

by  ICOPY.SITE