Jenkins 声明式管道中的更改结果

Change Result in Jenkins Declarative Pipeline

我想将我在 jenkins 管道中的一个步骤的结果更改为 UNSTABLE 而不是 FAILURE.

我目前的尝试是这样的:

steps {
  withMaven(maven: mavenTool, jdk: jdkTool) {
    sh 'mvn verify'
  }
}
post {
  failure {
    script {
      manager.build.buildUnstable()
    }
  }
}

有没有人有使用声明式 jenkins 管道的经验?

你必须这样做:

steps {
  withMaven(maven: mavenTool, jdk: jdkTool) {
    sh 'mvn -Dmaven.test.failure.ignore=true verify'
}
post {
   always {
      junit(testResults: '**/surefire-reports/*xml', allowEmptyResults: true)
   }
}

maven.test.failure.ignore 是 Maven Surefire 插件的 config parameter

只是为了添加 warnError 而更新此内容;您现在可以将失败的步骤包装为警告("unstable" 构建),例如:

 warnError('Maven tests failed!') {
   sh 'mvn verify'
 }

这样您就可以了解故障。