Jenkins:在MultiJob中共享变量

 ha遗忘的密 发布于 2022-12-20 16:19

我正在使用Jenkins进行测试/构建,因此我使用此配置创建了一个MultiJob项目:

    测试工作

    建立工作

    安装工作

MultiJob是从Master Jenkins启动的,但其他工作是从其他节点启动的.Build Job执行一个创建BUILD_ID的shell脚本.现在,我希望将BUILD_ID作为参数传递给Install Job.我怎样才能做到这一点?我唯一的选择是使用属性文件?

非常感谢

2 个回答
  • 您可以在多作业阶段BUILD_ID使用“ 预定义参数”选项来传递参数。

    步骤如下:

    通过单击您的多作业的“ 配置”链接转到“配置”页面

    单击要传递参数的作业的“ 高级”按钮

    单击添加参数,选择预定义参数。然后创建您自己选择的参数名称并将其分配BUILD_ID给它;

    通过启用要在其中接收定义的参数的下游作业中的“ 此构建为参数化”选项来创建相同的参数。然后,您可以在脚本中使用相同的代码

    2022-12-20 16:21 回答
  • 该问题询问如何在MultiJob项目的作业之间传递值,而不是参数化触发器.参数化触发器可能不是一个好的解决方案,因为下游作业将在MultiJob父级的范围之外执行.要在MultiJob子作业之间传递变量,

      将变量写入第一个子作业中的属性文件

      "将工件存档"作为第一个子作业中的构建后操作

      在第一个和第二个子作业之间插入"从另一个项目复制工件"构建.将Project Name设置为您的第一个子作业的名称,以及将Build构建为"由当前MultiJob构建触发的构建".在"要复制的工件"中添加属性文件.

      在第二个子作业中,在"高级..."下,从属性文件中添加参数 - >参数,然后在那里输入属性文件名.您的第二阶段现在将从第一阶段传递变量.

    2022-12-20 16:21 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有