【问题标题】:Wait for sonar qube quality gate on Azure DevOps等待 Azure DevOps 上的 sonarqube 质量门
【发布时间】:2019-05-14 03:22:01
【问题描述】:

我正在使用 Azure DevOps 上的 YAML 文件将管道创建为代码,但我有一个“小”塞子;我不知道当质量门失败时如何破坏构建,在詹金斯上,这个选项就像这样简单:

stage("Quality Gate") {
        steps {
          timeout(time: 1, unit: 'HOURS') {
            waitForQualityGate abortPipeline: true
          }
     }
 }

但是,如何在使用 YAML 的 Azure DevOps 上做同样的事情?

非常感谢。

【问题讨论】:

    标签: sonarqube azure-devops azure-pipelines


    【解决方案1】:

    您可以尝试创建构建管道的 UI 方式以了解更多 Yaml 命令

    举个例子,

    在下面的 UI 中,控制选项可帮助您定义构建成功或失败的条件


    条件:只有之前的所有任务都成功了

    对应的 yaml 是

    steps:
    - task: DotNetCoreCLI@2
      displayName: 'dotnet build'
    

    条件:即使之前的任务失败。除非构建被取消

    steps:
    - task: DotNetCoreCLI@2
      displayName: 'dotnet build'
    
      condition: succeededOrFailed()
    

    条件:即使之前的任务失败。即使构建被取消

    steps:
    - task: DotNetCoreCLI@2
      displayName: 'dotnet build'
    
      condition: always()
    

    这样你可以找到所有的yaml命令(或)语法使用UI构建管道的方式

    您可以使用以下方式转换 UI -> Yaml

    【讨论】:

    • 您好,在此之前感谢您的回答。我有时会这样做;我在“UI 设计师”上添加了任务,然后查看了自动生成的 YAML。但确切地说,如果质量门失败,我可以使用什么官方插件来破坏我的管道?
    • 您只需要安装sonarqubue extension 即可使用发布质量门任务,从中您可以控制所需的配置
    【解决方案2】:

    您好开发人员和开发人员

    我创建了一个小 BashScript 来在声纳质量门失败时中断构建,它适用于任何语言、任何构建工具和任何 CI 服务器 https://github.com/carlosdeveloper10/wait-for-sonar-qg

    【讨论】:

      猜你喜欢
      • 2021-09-05
      • 2020-06-24
      • 2021-05-06
      • 2021-07-07
      • 2021-02-18
      • 2015-07-05
      • 2016-08-11
      • 2019-06-23
      • 2021-08-22
      相关资源
      最近更新 更多