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

如何在Azure DevOps的独立CD流水线中调用CI流水线发布的构件

Azure DevOps 独立CD流水线调用CI构件实现方案

前置配置

  • 确保CD流水线所属的服务账号拥有CI流水线所在项目的构件读取权限,跨项目场景需要额外开通跨项目访问权限
  • 提前获取CI流水线的ID:打开CI流水线编辑页,URL中pipelines/edit/后的数字即为CI流水线ID

CD流水线YAML示例

# CD流水线基础配置,按需修改
trigger: none # 可以配置为CI自动触发,也可以手动触发
pool:
  name: <你的自托管代理池名称> # 替换为你自己的自托管代理池名称

steps:
# 步骤1:下载CI流水线发布的构件
- task: DownloadBuildArtifacts@1
  displayName: '下载CI流水线构件'
  inputs:
    buildType: 'specific'
    project: '<你的Azure DevOps项目名称>' # 替换为实际项目名称
    pipeline: '<CI流水线的数字ID>' # 替换为前面获取的CI流水线ID
    buildVersionToDownload: 'latest' # 默认取最新成功的CI构件,也可以指定具体版本
    artifactName: 'drop' # 和CI中发布的构件名保持一致
    downloadPath: '$(System.ArtifactsDirectory)' # 下载到代理的构件目录

# 步骤2:解压下载的output_final.zip(按需配置解压路径)
- task: ExtractFiles@1
  displayName: '解压前端构件包'
  inputs:
    archiveFilePatterns: '$(System.ArtifactsDirectory)/drop/output_final.zip'
    destinationFolder: '<你要部署的目标路径>' # 替换为自托管代理上的部署目录
    cleanDestinationFolder: true
    overwriteExistingFiles: true

# 后续可以加你自己的部署步骤,比如复制到nginx目录、上传到服务器等

补充说明

如果需要CI运行成功后自动触发CD流水线,只需要在CD流水线的触发器配置中,将CI流水线添加为管道触发器即可,无需手动执行CD流程。

内容的提问来源于stack exchange,提问作者santosh kumar patro

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 14:06:07