使用 Azure Artifacts 发布和下载 npm 包

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020

使用 Azure Artifacts,可以从自己的源和公共注册表(例如 npmjs.com)发布和下载 npm 包。 本快速入门介绍如何使用 Azure Artifacts 创建源、配置项目和管理 npm 包。

先决条件

产品 要求
Azure DevOps - 一个 Azure DevOps 组织
- Azure DevOps 项目
- 下载并安装 Node.js 和 npm

创建源

  1. 登录到 Azure DevOps 组织,并导航到你的项目。

  2. 选择“项目”,然后选择“创建源”

  3. 为您的源提供 名称,选择 可见性 选项来确定谁可以查看您的包。若要包括来自常见公共源(如 nuget.orgnpmjs.com)的包,请勾选“包括公共源中的包”。关于 范围,请决定该源是否仅限于您的项目或整个组织。

  4. 完成操作后,选择“创建”

    显示用于在 Azure DevOps Services 中创建新源的选择的屏幕截图。

  1. 登录到 Azure DevOps 服务器,然后转到项目。

  2. 选择“项目”,然后选择“创建源”

  3. 为您的源提供 名称,选择 可见性 选项来确定谁可以查看您的包。若要包括来自常见公共源(如 nuget.orgnpmjs.com)的包,请勾选“包括公共源中的包”。关于 范围,请决定该源是否仅限于您的项目或整个组织。

  1. 完成操作后,选择“创建”

    显示用于在 Azure DevOps 2022 中创建新源的选择的屏幕截图。

  1. 完成操作后,选择“创建”

    显示用于在 Azure DevOps 2020 中创建新源的选择的屏幕截图。

注意

默认情况下,当创建新提要时,项目中的生成服务(例如:projectName Build Service (orgName))将被分配提要和上游阅读者(协作者)角色。

连接到源

Azure Artifacts 建议使用两个单独的配置文件。 第一个应保存在 $HOME 目录(Linux/macOS)或 $env本地。HOME (Windows)用于安全地存储凭据。 这允许 npm 客户端访问凭据进行身份验证。

在本部分中,你将配置第二个 npmrc 文件,该文件应放置在 package.json 文件所在的同一目录中。

此设置允许你共享配置文件,而无需公开凭据。

  1. 登录到 Azure DevOps 组织,并导航到你的项目。

  2. 选择 构件,从下拉菜单中选择你的订阅源,然后选择 连接到订阅源

  3. 在左侧导航窗格中,选择 npm。 如果这是你第一次将 Azure Artifacts 与 npm 配合使用,请确保已安装必备组件。

  4. “项目设置 ”部分下,根据作系统选择 “Windows或其他 ”,然后按照提供的说明配置配置文件并连接到 Azure Artifacts 源。

    显示如何设置 npm 项目并连接到 Azure DevOps Services 中的源的屏幕截图。

注意

Azure DevOps Server 不支持此 vsts-npm-auth 服务。

  1. 登录到 Azure DevOps 集合,然后导航到项目。

  2. 选择 构件,从下拉菜单中选择你的订阅源,然后选择 连接到订阅源

  3. 在左侧导航窗格中,选择 npm。 如果这是你第一次将 Azure Artifacts 与 npm 配合使用,请确保已安装必备组件。

  4. “项目设置 ”部分下,根据作系统选择 “Windows或其他 ”,然后按照提供的说明配置配置文件并连接到 Azure Artifacts 源。

    显示如何在 Azure DevOps Server 2022 中设置 npm 项目并连接到 Azure Artifacts 源的屏幕截图。

注意

Azure DevOps Server 不支持此 vsts-npm-auth 服务。

  1. 登录到 Azure DevOps 集合,然后导航到项目。

  2. 选择 构件,从下拉菜单中选择你的订阅源,然后选择 连接到订阅源

  3. 在左侧导航窗格中,选择 npm。 如果这是你第一次将 Azure Artifacts 与 npm 配合使用,请确保已安装必备组件。

  4. “项目设置 ”部分下,根据作系统选择 “Windows或其他 ”,然后按照提供的说明配置配置文件并连接到 Azure Artifacts 源。

    显示如何在 Azure DevOps Server 2020 中设置 npm 项目并连接到 Azure Artifacts 源的屏幕截图。

重要

Npm 仅支持 npmrc 文件中的单个registry设置。 若要使用多个注册表,必须使用 上游源范围

将包发布到源

若要成功运行发布命令,必须先使用源进行身份验证。 如果尚未执行此作,请按照 “连接到源 ”部分中的步骤作,然后继续执行以下说明。

  • 在项目目录中运行以下命令,发布 在package.json中定义的 npm 包:

    npm publish
    

重要

不支持在 publishConfig 发布时使用属性替代注册表配置。

从源还原包

若要成功运行还原命令,必须先使用源进行身份验证。 如果尚未执行此作,请按照 “连接到源 ”部分中的步骤作,然后继续执行以下说明。

  1. 在项目目录中运行以下命令以还原所有 npm 包:

    npm install
    
  2. 若要还原特定的 npm 包,请从项目目录运行以下命令:

    npm install --save <PACKAGE_NAME>