maven - 如果步骤不稳定,Jenkins管道将失败

标签 maven jenkins jenkins-pipeline jenkins-2

当前,当maven-job不稳定(黄色)时,我的管道失败(红色)。

node {
    stage 'Unit/SQL-Tests'
    parallel (
       phase1: { build 'Unit-Tests' }, // maven
       phase2: { build 'SQL-Tests' } // shell
    )
    stage 'Integration-Tests'
    build 'Integration-Tests' // maven
}

在此示例中,作业单元测试的结果不稳定,但在管道中显示为失败。

如何更改作业/管道/ Jenkins ,以使(1)管道步骤不稳定而不是失败,以及(2)管道状态不稳定而不是失败。

我尝试添加MAVEN_OPTS参数-Dmaven.test.failure.ignore=true,但这不能解决问题。我不确定如何将build 'Unit-Test'包装到可以捕获和处理结果的某些逻辑中。

this logic添加子管道并不能解决问题,因为没有选项可以从Subversion check out (该选项在常规Maven作业中可用)。如果可能的话,我不想使用命令行结帐。

最佳答案

无论步骤是不稳定还是失败,脚本中的最终构建结果都将失败。

您可以在默认情况下将传播添加为false以避免流失败。

def result = build job: 'test', propagate: false

在流程的最后,您可以根据从“结果”变量中获得的结果来判断最终结果。

例如
currentBuild.result='UNSTABLE'

这是一个详细的例子
How to set current build result in Pipeline



提姆

关于maven - 如果步骤不稳定,Jenkins管道将失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38713865/

相关文章:

jenkins - job-dsl - 如何在从 gitlab repo 分支创建作业时传递凭据?

Jenkins dsl 管道 def 变量

java - 如何在jenkins管道中获取{env.WORKSPACE}的父目录

maven - 根据jar文件自动创建pom文件依赖

jenkins - 在 Windows 上连接 Jenkins 从属代理失败并出现连接超时

java - Spring MVC StreamingResponseBody 返回分块文件

matrix - Jenkins 矩阵构建。升级后组合过滤器 groovy 脚本失败

groovy - 在 jenkins 中使用带有循环的构建流程插件的并行作业

Maven 错误和构建失败

java - 在Windows 7 64位以及Java 8和Maven3.3.3上构建hadoop 3.0.0-SNAPSHOT时出现问题