Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020
Azure Artifacts 上游源使开发人员能够从公共注册表(如 npmjs.com)使用包。 在您的源中启用上游源后,Azure Artifacts 会自动将从上游源安装的任何包的副本保存到您的源。 此设置提供最大的灵活性,使你能够混合使用有作用域和无作用域的包(包括来自公共注册表的包),所有这些包全部汇集在一个单独的馈送中。 即使上游源暂时不可用,此设置也可确保继续访问这些包。
先决条件
| 产品 | 要求 |
|---|---|
| Azure DevOps | - 一个 Azure DevOps 组织。 - Azure DevOps 项目。 - 下载并安装 Node.js 和 npm。 |
获取工具
如果这是你第一次在计算机上将 Azure Artifacts 与 npm 配合使用,请执行以下步骤来设置环境:
请确保已安装 Node.js 和 npm,然后运行以下命令进行安装 vsts-npm-auth:
npm install -g vsts-npm-auth --registry https://registry.npmjs.com --always-auth false
创建信息流
如果已有 Azure Artifacts 源,请跳到下一部分。 否则,请创建如下所示的新项:
登录到 Azure DevOps,然后导航到项目。
选择 “工件”,然后选择“创建订阅源”。
请输入你的订阅源名称,设置可见性以定义谁可以查看你的包,然后选择订阅源的范围。 请务必选中“包含来自公共源的包”复选框,以启用上游源并允许从公共注册表获取包。
完成操作后,选择“创建”。
添加 npmjs 上游
如果在创建源期间选中了上游源复选框, 则 npmjs 将自动添加到源中的上游源列表中。 如果没有,可以手动添加它,如下所示:
登录到 Azure DevOps,然后导航到项目。
选择项目,然后从下拉菜单中选择源。
选择齿轮图标按钮
以打开 源设置。选择 上游源,然后选择“ 添加上游”。
选择“公共源”,然后从下拉菜单中选择 npmjs (https://registry.npmjs.org/)。
完成后,选择“添加”。
选择右上角的 “保存” 以应用更改。
连接到源
在能够将包从上游来源保存到您的 Feed 之前,您必须先设置项目并连接到您的 Feed。
登录到 Azure DevOps,然后导航到项目。
选择项目,然后从下拉菜单中选择源。
选择 “连接到源”,然后从左侧面板中选择 npm 。
按照 “项目设置”部分中的步骤配置您的 .npmrc 文件并使用馈送进行身份验证。 有关详细信息,请参阅 设置 npm 项目 。
从 npmjs 安装包
经过与源的身份验证后,您就可以开始从公共注册表(如 npmjs.com)中安装软件包。 从上游源安装包时,Azure Artifacts 会自动将那个包的副本保存到您的库中。 在此示例中,你将安装 Mongoose(MongoDB 对象数据建模(ODM)库,该库可帮助 Node.js 应用程序中进行架构定义、数据验证和对象建模。
注意
若要从上游保存包,必须具有 源和上游读取者(协作者) 角色或更高版本。 有关更多详细信息,请参阅 源角色和权限 。
转到
https://www.npmjs.com。搜索 Mongoose 包,然后选择它以导航到其详细信息页。
将 install 命令复制到剪贴板。
在命令提示符窗口中,导航到项目目录并运行 install 命令。
npm i mongoose
查看保存的包
在您从 npm 注册表安装包之后,您可以看到 Azure Artifacts 如何自动将该包的副本保存到您的馈送中。 按照以下步骤确认软件包已经添加到您的订阅源:
登录到 Azure DevOps,然后导航到项目。
选择项目,然后从下拉菜单中选择源。
从右上角的 “源 ”菜单中,选择 npmjs 以筛选 npm 注册表中的包。
在上一步中安装的 mongoose 包现在应显示在提要中。 运行安装命令时,Azure Artifacts 会自动保存副本。