从 Azure Artifacts 源发布通用包

Azure DevOps服务

通用包允许将许多类型的文件和包内容存储到 NuGet、npm 和 Python 包等格式之外。 可以使用Azure CLI直接从命令行发布它们。 通用包最多可为 4 TiB,并且必须包含名称和版本。 本文说明如何将通用包发布到你的 Azure Artifacts 源。

先决条件

产品 要求
Azure DevOps - 一个 Azure DevOps 组织。
- Azure DevOps 项目。
- 安装 Azure CLI。
- 安装 Azure DevOps 扩展 版本 0.14.0 或更高版本。

安装 Azure DevOps 扩展

Azure CLI的 Azure DevOps 扩展允许从命令行管理Azure DevOps服务。 安装之前,请确保已安装 Azure CLI 2.10.1 或更高版本。

  1. 若要安装Azure DevOps扩展,请运行:

    az extension add --name azure-devops
    
  2. 若要将现有安装更新到最新版本,请运行:

    az extension update --name azure-devops
    

创建源

在发布通用包之前,您需要先有一个用于发布该包的源。 源是一个用于存储和组织包的容器,你可以控制哪些人可以访问这些包。 按照以下步骤为你的项目或组织创建源。

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

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

  3. 为源输入一个“名称”。

  4. 选择 “可见性 ”选项可控制谁可以查看包。

  5. 如果你希望你的源也从公共源(如 nuget.org 或 npmjs.com)拉取包,请选择 包括来自常见公共源的包。

  6. 对于范围,请选择该源是仅适用于你的项目,还是适用于整个组织。

  7. 完成后,选择 创建。

    显示如何在 Azure DevOps Services 中创建新源的屏幕截图。

发布通用包

创建源后,即可向该源发布通用包。 发布的每个包都需要名称和版本号,并且两者都必须遵循特定的命名规则:

  • 包名称必须为小写、以字母或数字开头和结尾,并且只能包含字母、数字和非连续短划线()、下划线(-_)或句点(.)。
  • 包版本号也必须为小写,并且不能包含由 + 后缀表示的构建元数据。 有关详细信息,请参阅 语义版本控制。
  1. 运行以下命令之一来发布你的通用包,具体取决于你的源是限定在项目范围还是组织范围:

    • 项目作用域的源:

      az artifacts universal publish --organization https://dev.azure.com/<YOUR_ORGANIZATION> --project <PROJECT_NAME> --scope project --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <PACKAGE_DIRECTORY> --description <PACKAGE_DESCRIPTION>
      
    • 组织作用域的源:

      az artifacts universal publish --organization https://dev.azure.com/<YOUR_ORGANIZATION> --feed <FEED_NAME> --name <PACKAGE_NAME> --version <PACKAGE_VERSION> --path <PACKAGE_DIRECTORY> --description <PACKAGE_DESCRIPTION>
      

注意

如果包包含大量文件(100K 或更多),发布可能会失败。 在这种情况下,请将文件捆绑到 ZIP 或 TAR 存档中以减少文件计数。

查看已发布的包

发布你的包后,你可以确认它已在你的源中可用。

  1. 登录到 Azure DevOps 组织,然后导航到项目。

  2. 选择“ 项目”,然后从下拉菜单中选择源。 如果发布成功完成,你的包应已出现在源中。

    显示新发布的通用包的屏幕截图。