场景:
- 为前端应用程序配置Azure DevOps yaml部署管道
- 将前端资源作为NPM软件包发布到Azure Artifacts
- Azure DevOps管道将初始软件包推广到多个阶段
方法:
- 备选方案1:使用显式的“下载软件包”任务从Azure Artifacts feed下载npm软件包
displayName: "Artifacts - download"
inputs:
packageType: 'npm'
feed: '38a52be4-9352-453e-af97-5c3b448652f0/38a52be4-9352-453e-af97-5c3b448652f0'
view: '070e33c7-f5c8-4561-8186-5c3b448652f0'
definition: '1f32cfbf-1427-4b27-8476-5c3b448652f0'
version: '1.0.1'
downloadPath: '$(System.ArtifactsDirectory)'
这种方法可以实现,但需要在yaml定义中指定硬编码版本或通配符“*”(最新版本)。 理想情况下,版本应该能够通过“运行管道”对话框在运行时指定。但是,这需要将包配置为资源(Alt. 2)
Alt.2:在yaml定义顶部指定“package”资源。
根据docs,有许多可能的资源:管道、构建、存储库、容器、包和Webhook。在这种情况下,“packages”资源似乎是合适的。
resources:
packages:
- package: contoso
type: npm
connection: pat-contoso
name: yourname/contoso
version: 7.130.88
trigger: true
然而,文档不足,只提供了一个GitHub packages的示例。
我找不到任何关于“Azure Artifacts”包的示例。
谁能分享一个针对Azure Artifacts的工作“package”配置示例?
pipelines
资源时)时,您将获得一个非常好的用户界面: https://learn.microsoft.com/zh-cn/azure/devops/pipelines/process/resources?view=azure-devops&tabs=schema#manual-version-picker-for-resources-in-the-create-run-dialogue如果能有类似的方式来选择来自Azure Artifacts feed的工件,那就太棒了 :) - undefined