Jenkins MultiJob - 使用内部作业的数据发送结果电子邮件

时间:2013-06-18 15:29:57

标签: jenkins environment-variables jenkins-plugins

我有一个包含3个内部作业的MultiJob项目,需要按以下顺序执行

Master MultiJob Project (Job)
 |----- Phase 1
            |------> JOB A 
 |----- Phase 2
            |------> JOB B
 |----- Phase 2
            |------> JOB C

当作业C结束时,Master MultiJob项目(作业)将发送一封邮件(使用Email-ext plugin),其中包含所有内部作业(A,B和C)的结果状态(作为后期构建)步骤)

我需要找到一种方法来获取每个内部作业的结果(作为参数或任何其他方式......)

我试图通过以下方式实现:

  1. 设置环境变量,然后尝试阅读 - 失败 - 作业A / B / C结束后,Varaiable不再存在
  2. 试图用SETX这样做,结果相同
  3. 尝试使用EnvInject Plugin并再次失败
  4. 不管怎么说都没有?

    有人可以遮挡一些光吗?

1 个答案:

答案 0 :(得分:1)

假设你的工作是Multijob,你可以添加一个像这样的groovy post build:

subBuilds = manager.build.getSubBuilds()
//print the each sub build instance to the console log and its result
subBuilds.each{
    manager.listener.logger.println "${it}, ${it.getResult()}"
}