Jenkins向存储发送了错误的构建状态

时间:2017-09-05 12:12:41

标签: jenkins jenkins-pipeline

我正在使用jenkins管道插件,XUnitBuilder插件和stash通知程序插件。我有问题,它报告错误的构建状态。我的管道:

pipeline {
agent none
stages {
    stage('Build') {
        steps {
            parallel(
                failFast: true,
                'One': {
                    node( 'windows' ){
                        run tests ...
                        step([$class: 'XUnitBuilder',
                             thresholds: [
                                [$class: 'FailedThreshold', failureNewThreshold: '0', failureThreshold: '0', unstableNewThreshold: '0', unstableThreshold: '0']
                            ],
                            tools: [
                                [$class: 'CTestType', deleteOutputFiles: true, failIfNotNew: true, pattern: 'Testing/**/Test.xml']
                            ]
                        ])
                    }
                },

                'Two': {
                    node( 'windows' ){
                        run tests ...
                        step([$class: 'XUnitBuilder',
                             thresholds: [
                                [$class: 'FailedThreshold', failureNewThreshold: '0', failureThreshold: '0', unstableNewThreshold: '0', unstableThreshold: '0']
                            ],
                            tools: [
                                [$class: 'CTestType', deleteOutputFiles: true, failIfNotNew: true, pattern: 'Testing/**/Test.xml']
                            ]
                        ])
                    }
                }
            )
        }
    }
}

}

问题:一旦' One'完成后,XUnitBuilder将构建结果设置为成功,并将其报告为存储,并且可以合并我的pull请求。这显然是错误的,因为' Two'可能甚至没有开始。 我需要 *如果成功或成功,则阻止XUnitPublisher设置构建结果 *防止藏匿在整个管道完成之前被通知

当然,我可以存储测试结果并在帖子部分中运行XUnitBuilder,但由于我的管道有几个阶段,每个阶段都有几个并行的步骤来运行测试,因此这变得非常复杂。

有人知道解决这个问题很热吗?

0 个答案:

没有答案