我见过的解决方案向您展示了如何通过manager.build.result
访问当前结果。但是,我配置了一个NUnit发布者,将构建标记为不稳定或失败。在这种情况下,当Groovy脚本在NUnit插件之后运行时,manager.build.result
的值仍然成功。首先,我在哪里可以找到manager.build的文档?其次,如何访问构建的“标记”状态?
答案 0 :(得分:0)
这就是为什么然后......
protected final boolean performAllBuildSteps(BuildListener listener, Iterable<? extends BuildStep> buildSteps, boolean phase) throws InterruptedException, IOException {
boolean r = true;
for (BuildStep bs : buildSteps) {
if ((bs instanceof Publisher && ((Publisher)bs).needsToRunAfterFinalized()) ^ phase)
try {
if (!perform(bs,listener)) {
LOGGER.log(Level.FINE, "{0} : {1} failed", new Object[] {AbstractBuild.this, bs});
r = false;
}
} catch (Exception e) {
reportError(bs, e, listener, phase);
} catch (LinkageError e) {
reportError(bs, e, listener, phase);
}
}
return r;
}
在返回结果之前,看起来这个函数确实有用地将每个发布者的结果存储在局部变量中。因此,Groovy绝对没有办法确定构建完成后的结果,而不是在构建完成后显式运行。