在构建完成后是否可以为构建设置构建结果?
我找不到任何已经做到这一点的插件,我正在考虑自己编写,但我想看看这是否有可能在走这条路之前.
(我已经看过现有的代码以及"失败的构建"插件如何作为一个例子,但我对Jenkins代码库的理解还不够先进,无法理解所有可能性.)
用例:我们有一个构建管道,在管道的末端附近有一个deploy-to-qa步骤,可以将工件部署到QA环境.我们在此步骤之前进行了自动化测试以尝试捕获工件的任何问题,但是我们的测试覆盖率在某些区域并不是很高,因此错误仍然可以通过裂缝.我希望能够在事后标记部署到qa的构建为FAILED,以表示该特定管道无效且不是生产发布的候选者.(基本上与此Build Pipeline插件问题相同)
经过对代码的更多研究,我相信这是不可能的。
从hudson.model.Run:
public void setResult(Result r) {
// state can change only when we are building
assert state==State.BUILDING;
// snip
...
}
Run Code Online (Sandbox Code Playgroud)
因此,除非处于“构建”状态,否则构建结果不会改变。
我可以尝试使用 lastSuccessful 和 lastStable 符号链接(正如delete()中的函数所做的那样hudson.model.AbstractBuild),但是一旦 Jenkins 重新加载来自 的构建结果,这些符号链接就会被重置jobs/JOBNAME/builds/。
| 归档时间: |
|
| 查看次数: |
4597 次 |
| 最近记录: |