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

如何通过Terraform创建Azure DevOps的Release Pipeline?

关于Terraform创建Azure DevOps Release Pipeline的解决方案

结论先行

目前微软官方维护的Azure DevOps Terraform Provider暂未提供原生的经典Release Pipeline专属资源,你可以通过以下两种可行方案实现需求。

方案1:使用通用资源调用Azure DevOps REST API创建经典发布管道

  • 调用Provider内置的azuredevops_resource通用资源,直接对接Azure DevOps Release REST接口实现全生命周期管理,示例配置如下:
terraform {
  required_providers {
    azuredevops = {
      source  = "microsoft/azuredevops"
      version = ">= 0.8.0"
    }
  }
}

provider "azuredevops" {
  org_service_url = "你的Azure DevOps组织地址"
  personal_access_token = "你的PAT令牌,需要有发布管道管理权限"
}

resource "azuredevops_project" "example" {
  name = "示例项目"
}

resource "azuredevops_resource" "release_pipeline" {
  project_id  = azuredevops_project.example.id
  resource_type = "Release"
  resource_url = "_apis/release/definitions?api-version=7.1-preview.4"
  
  # 发布管道的完整定义JSON,可先在UI上导出已有发布管道的JSON稍作修改即可
  content = jsonencode({
    name = "示例发布管道"
    path = "\\Example"
    # 其余发布管道配置字段,对应REST接口要求的参数填写
  })
}
  • 你可以先在Azure DevOps UI上手动创建一个符合需求的发布管道,导出其JSON配置后替换上述content块内容即可快速完成配置。

方案2:使用YAML多阶段管道(推荐)

  • 微软目前已经主推YAML格式的多阶段管道替代传统经典UI发布管道,这类管道可以直接用你已经熟悉的azuredevops_build_definition资源创建,只需要在管道对应的YAML文件里添加发布阶段即可,完全兼容你现有构建管道的创建逻辑。
  • 该方案的优势:
    • 管道配置全量托管在代码库中,支持版本追溯、变更审计
    • 和Terraform配置即代码的理念完全匹配,维护成本更低
    • 避免了后续经典发布管道退役带来的迁移成本

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 07:45:00