我在 Jenkins 有一份工作(称为BIGJOB);几个构建步骤是使用Parameterized Trigger Plugin触发其他作业(称为SMALLJOB)的构建,然后等待它们完成。我需要做的是从SMALLJOB上触发的构建中检索 Artifact 。

最初,我认为我可以使用Copy Artifact Plugin从触发的SMALLJOB的“最后构建”中检索 Artifact 。当一次仅运行一个SMALLJOB时,这确实可以可靠地工作。

但是我有多个正在运行的BIGJOB,它们都触发了多个SMALLJOB,因此使用“最后一次构建”是不可靠的,因为两个SMALLJOB同时完成。

有没有更可靠的方法来从特定的下游作业中获取 Artifact ?如果我可以获取内部版本号,则可以使用curl来获取 Artifact 。

最佳答案

将来是否有其他问题困扰着这个问题:

在使用参数化触发器插件作为构建步骤时,如果在触发器上配置了“阻止,直到触发的项目完成其构建”,则以下环境变量可用于进一步的构建步骤:

  • LAST_TRIGGERED_JOB_NAME =“上一个项目已启动”
  • TRIGGERED_BUILD_NUMBER_ {项目名称} =“上次触发的内部版本号”

  • 从2.17版开始的
  • TRIGGERED_JOB_NAMES =“用逗号分隔的所有触发项目的列表”
  • TRIGGERED_BUILD_NUMBERS_ {项目名称} =“用逗号分隔的已触发内部版本列表”
  • TRIGGERED_BUILD_RESULT_ {项目名称} =“上次触发项目的生成结果”
  • TRIGGERED_BUILD_RESULT_ {项目名称} RUN {内部版本号} =“内部版本号触发的内部版本的结果”
  • TRIGGERED_BUILD_RUN_COUNT_ {项目名称} =“为项目触发的构建数量”

  • 在插件网站上查看更多信息-问题中的链接。

    10-06 11:07