在 azure devops 中部署版本之前如何验证其他构建是否已成功构建

问题描述 投票:0回答:1

我们有一个要求,在 QA2 发布之后,我们必须触发一个构建,该构建将在 qa2 中执行一些活动并创建一个构建。如果构建失败,我们必须传递一些参数或更改一些参数,因此我们无法将其保留在正常的发布管道中。 我们想知道是否有任何方法可以保持检查,以便如果构建通过,则只允许将其部署到生产环境,否则不应允许。 Current structure

是否有任何大门或检查可以使这成为可能?

azure-devops azure-pipelines azure-pipelines-release-pipeline
1个回答
0
投票

当然,您可以在PROD阶段的“预部署条件”上使用Gates。您只需使用 Invoke REST API 检查即可调用 REST API“Latest - Get”。

  1. 转到“项目设置”>“服务连接”以创建通用服务连接。以下两个字段的值已重新布线。

    • 服务器URL:API的HTTP URL前缀。例如,
      https://dev.azure.com/{orgName}
      {orgName}
      是 Azure DevOps 组织的实际目标。
    • 服务连接名称:服务连接的自定义名称。
  2. PROD阶段的“预部署条件”上,启用Gates并添加调用REST API检查以下配置。

    • 连接类型

      Generic

    • 通用服务连接:之前创建的通用服务连接的名称。

    • 方法

      GET

    • 标头(json):

      {
        "Content-Type":"application/json", 
        "Authorization": "Bearer $(system.AccessToken)"
      }
      
    • URL后缀及参数:

      /{projName}/_apis/build/latest/{definitionId}?api-version=7.0-preview.1

      {projName}
      是您项目的实际名称,
      {definitionId}
      是构建管道的定义ID (
      QA2 Test Build
      )。

    • 高级 > 完成事件

      ApiResponse

    • 高级 > 成功标准

      eq(root['result'], 'succeeded')


© www.soinside.com 2019 - 2024. All rights reserved.