我们有一个Jenkins-Job(职位A),它将一些工件推送到git存储库。此推操作会触发另一个Jenkins-Job(任务B),用于测试新推入的工件。
作业A发送一条消息,告知一切是否正常或是否发生错误。但是要使通知的信息完整,作业A至少需要知道作业B是否成功(拥有日志会更好)。
我现在想知道是否有可能检索完成的作业的结果,即使该作业不是由需要信息的作业触发的?
在作业B运行期间是否也有可能阻止作业A?我找到了“阻止构建插件”,但这只能阻止从开始到指定作业完成的作业。
答案 0 :(得分:0)
您是否尝试过使用类似的方法来获取构建结果?以前曾用它来建立链here
node {
try {
// do something that fails
sh "exit 1"
currentBuild.result = 'SUCCESS'
} catch (Exception err) {
currentBuild.result = 'FAILURE'
}
echo "RESULT: ${currentBuild.result}"
}
答案 1 :(得分:0)
这是一个非常奇怪的设置。看起来那些应该是阶段而不是单独的工作。仍然可以通过使用jenkins json API来获取任何作业的状态
jenkins_url/job/${job_name}/lastBuild/api/json?tree=result,timestamp,estimatedDuration
有趣的问题是-您如何知道要单独检查其他作业的号码?