使用 Azure Pipelines 发布 npm 包(YAML/经典)

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

使用 Azure Pipelines,可以将 npm 包发布到 Azure Artifacts 源和公共注册表(例如 npmjs.com)。 本文将指导您使用 YAML 和经典管道发布 npm 包。

先决条件

发布到 Azure Artifacts 源

注意

若要使用 Azure Pipelines 将包发布到源,项目集合生成服务和项目的生成服务标识都必须配置为源发布者(参与者)。 有关更多详细信息,请参阅添加新用户/组

- task: Npm@1
  inputs:
    command: publish
    publishRegistry: useFeed
    publishFeed: <FEED_NAME>        ## For project-scoped feeds, use: <PROJECT_NAME>/<FEED_NAME> 
  • publishRegistry:选择 useFeed 以在组织中使用源。 选项:useExternalRegistry, useFeed
  • publishFeed:要发布到的源。 当 publishRegistry 为 useFeed 时是必需的。

提示

使用 YAML 编辑器将 npm 任务添加到 YAML 管道时,将自动生成publishFeed项目和源 ID。

发布到公共注册表

在将包发布到公共 npm 注册表(如 npmjs.com)之前,必须先创建服务连接以使用所需的外部服务进行身份验证。

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

  2. 选择项目设置>服务连接,然后选择创建服务连接

    显示如何在 Azure DevOps 中创建新服务连接的屏幕截图。

  3. 依次选择“npm”、“下一步”。 填写必填字段,完成后选择保存

- task: Npm@1
  inputs:
    command: publish
    publishRegistry: useExternalRegistry
    publishEndpoint: '<NAME_OF_YOUR_SERVICE_CONNECTION>'
  • publishRegistry:选择 useExternalRegistry 以发布到公共注册表。 选项:useExternalRegistry |useFeed。
  • publishEndpoint:将占位符替换为前面创建的服务连接的名称。 当 publishRegistry == useExternalRegistry必需。