如何在案例测试失败或成功的情况下更改Jenkins Pipelinegitlab状态?

时间:2018-02-22 16:34:01

标签: jenkins gitlab jenkins-pipeline

如何更改Jenkins-Pipeline中的GitLab状态? 我知道我可以这样做:

stage('Tests') {
   steps {
      updateGitlabCommitStatus name: 'test', state: 'pending'
 (...Doing other stages and steps)

post {

    }
    success {
        updateGitlabCommitStatus name: 'test', state: 'success'
    }
    failure {
        updateGitlabCommitStatus name: 'test', state: 'failed'
    }
}    

但这只有在整个管道完成时才会完成 - 我的问题:如何在阶段测试结束后立即更改gitlab状态(测试)的状态(案例:成功和失败取决于测试状态 - 步骤)?

1 个答案:

答案 0 :(得分:3)

post指令也可以在stage内使用(参见documentation):

stage('Tests') {
  steps {
    updateGitlabCommitStatus name: 'test', state: 'pending'
    // ...
  }
  post {
    success {
      updateGitlabCommitStatus name: 'test', state: 'success'
    }
    failure {
      updateGitlabCommitStatus name: 'test', state: 'failed'
    }
  }
}