You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure DevOps Server指定视图中自动包含所有公共npm包?

Azure DevOps Server npm Feed 上游包视图配置解决方案

自动将上游公共源包纳入指定视图

目前Azure DevOps Server没有直接配置上游源包自动进入指定视图的选项,但可以通过以下两种间接方式实现类似效果:

  • 调整视图包含规则:进入Feed的视图管理页面,编辑@release视图,在“包含包”规则里选择“来自上游源的包”,并指定对应的npmjs上游源。这样从该上游拉取的所有包会自动被@release视图包含,无需手动推广。
  • 使用Pipeline自动化:创建Azure DevOps Pipeline,定期调用REST API查询Feed中来自上游源的未推广包,再批量将它们推广到@release视图。核心调用的API为POST https://{instance}/{collection}/{project}/_apis/packaging/feeds/{feedId}/packagesbatch?api-version=7.1-preview.1,请求体中指定包ID、版本以及目标视图ID即可。

批量推广所有公共源包

如果需要一次性处理现有上游源包,可通过以下方法操作:

  • Feed UI批量操作:进入Feed的包列表页面,用筛选器选择“来源:上游源”并指定npmjs源,勾选页面顶部的全选框(包数量较多时需滚动加载全部后再全选),接着点击“推广”按钮选择@release视图完成批量操作。
  • PowerShell脚本批量处理:编写PowerShell脚本调用Azure DevOps REST API实现批量推广,核心逻辑如下:
    1. 使用个人访问令牌(PAT)获取认证令牌
    2. 调用GET https://{instance}/{collection}/{project}/_apis/packaging/feeds/{feedId}/packages?api-version=7.1-preview.1&sourceType=upstream&sourceId={upstreamSourceId}获取上游包列表
    3. 构造包含所有包ID和版本的批量推广请求体
    4. 调用批量推广API完成操作

内容的提问来源于stack exchange,提问作者AardVark71

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 01:10:15