【问题标题】:Trigger Azure DevOps Release pipeline Stage from Spinnaker从 Spinnaker 触发 Azure DevOps 发布管道阶段
【发布时间】:2020-09-29 05:15:37
【问题描述】:

我在 Azure DevOps 中创建了发布管道。 我正在大三角帆内进行部署。一旦部署成功/失败,部署状态报告应该会进入 Azure DevOps 中的发布管道阶段。

如何做到这一点? Rest-Api 可以吗?

【问题讨论】:

    标签: azure-devops azure-devops-rest-api spinnaker azure-devops-self-hosted-agent spinnaker-halyard


    【解决方案1】:

    可以通过rest api触发azure devops发布管道阶段。

    你可以先使用Releases-Createrest api 创建一个release。

     POST https://vsrm.dev.azure.com/{organization}/{project}/_apis/release/releases?api-version=6.1-preview.8
    

    如果您想触发此版本中的特定阶段。然后你可以使用Releases - Update Release Environment

    PATCH https://vsrm.dev.azure.com/{organization}/{project}/_apis/Release/releases/{releaseId}/environments/{environmentId}?api-version=6.1-preview.7
    

    请参阅下面的 powershell 脚本示例:您可以按照步骤here 获取个人访问令牌。

    $url = "https://vsrm.dev.azure.com/{org}/{proj}/_apis/release/releases?api-version=6.1-preview.8"
    
    $PAT="Personnal Access Token"
    
    $base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($PAT)"))
    
    $body = '{
      "definitionId": releaseDefinitionId,
     }'
    
    #Create a release
    $releaseInfo = Invoke-RestMethod -Uri $url -Headers @{Authorization = ("Basic {0}" -f $base64AuthInfo)} -Method post -Body  $body -ContentType "application/json"
    
    #Trigger a specific stage
    $releaseId = $releaseInfo.id
    $EnvironmentIds = $releaseInfo.environments | select id
    
    #Trigger the second stage
    $EnvUrl = "https://vsrm.dev.azure.com/{org}/{proj}/_apis/Release/releases/$($releaseId)/environments/$($EnvironmentIds[1].id)?api-version=6.1-preview.7"
    
    $envBody='{
    "status": "inProgress"
    }'
    
    Invoke-RestMethod -Uri $EnvUrl -Headers @{Authorization = ("Basic {0}" -f $base64AuthInfo)} -Method patch -Body $envBody -ContentType "application/json"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-13
      • 1970-01-01
      • 2021-01-13
      • 1970-01-01
      相关资源
      最近更新 更多