我有一个Jenkins项目,我在Windows操作系统中运行了一个sonarqube分析。
在jenkins中,我创建了一个大致如下的批处理步骤:
mycommand test --machine --coverage > tests.output
sonar-scanner
- mycommand* 是一个我不能修改的第三方插件,并且,根据项目的内容,这一步可能会失败,我希望jenkins队列继续使用其他命令。
现在,如果mycommand返回一个错误jenkins stop。
我如何才能做到这一点?
1条答案
按热度按时间gab6jxml1#
这里的魔力在于命令的返回代码。在不知道它是什么和它做什么的情况下,重要的是如果任何命令返回非零退出代码,Jenkins会认为该命令失败。为了防止Jenkins记录任何错误,请在命令中添加
exit 0
。比如说
应该能用这个。
或者,你也可以用
&
将命令链接在一起,这样Jenkins就不会在所有操作完成之前检查退出代码,但是第二个命令也会总是显示为已传递,而不管它的真实状态如何。