1

我正在使用 Blue Ocean 创建一个 Jenkins 管道。

现在我尝试将 SonarQube 分析添加到流中。但是当我运行流程时,它说:

无步骤 此阶段无步骤

舞台是这样的:

stage('Analysis') {
      steps {
        script {
          if (env.BRANCH_NAME == 'develop') {
            withSonarQubeEnv('SonarQube Server') {
              bat 'mvn sonar:sonar'
              def qualitygate = waitForQualityGate()
              if (qualitygate.status != "OK") {
                error "Pipeline aborted due to quality gate coverage failure: ${qualitygate.status}"
              }
            }
          }
        }

      }
    }

流程正在开发分支中运行: 在此处输入图像描述 我不知道詹金斯为什么会说这个错误。有人可以帮我弄这个吗?

4

1 回答 1

0

更改了我的流程以使用 when 关键字:

 stage('SonarQube analysis') { 
      when {
                branch 'develop'
            }
      steps {
        withSonarQubeEnv('SonarQube') { 
         bat 'mvn sonar:sonar'
         }
        }
    }
     stage("SonarQube Quality Gate") { 
      when {
                branch 'develop'
            }
      steps {
        timeout(time: 10, unit: 'MINUTES') { 
        script {
            sleep 120
           def qg = waitForQualityGate() 
           if (qg.status != 'OK') {
             error "Pipeline aborted due to quality gate failure: ${qg.status}"
           }
           }
        }
        }
    }
于 2018-03-27T06:44:17.063 回答