首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jenkins计划同一版本的多个版本。

Jenkins计划同一版本的多个版本。
EN

Stack Overflow用户
提问于 2014-06-19 15:22:40
回答 1查看 1.2K关注 0票数 2

我有一个项目,在任何时候都有3-5个不同的汞分支。我想每周安排一次Jenkins测试,以便在所有相关分支机构进行测试。

我想,我想要的是一个参数化的构建,以分支名称作为参数,然后有一个分支列表,并且每周运行一次参数化生成,其中的每个参数都在列表中。

但是,我发现您不能将参数发送到触发的构建中。我想这里有一个插件。作业生成器是正确的插件吗?还有什么更好的吗?

我要提到的是,目前我们正在使用多个SCM来实现这一点,并且使构建的主体具有一个sh循环,该循环贯穿每个目录并运行测试。这真的很低效,而且很难维持.

EN

回答 1

Stack Overflow用户

发布于 2014-06-19 16:38:52

我可以提出一个解决方案,但不能称之为优雅。

  1. 首先,您需要创建multi-configuration项目(也称为Matrix项目)。
  1. 在这个项目中,您需要声明一个node (它可以是已经存在的master节点)

还有一种类型的axis (例如,BRANCH --小心不要使用Jenkins集环境变量),每个分支对应的值(例如defaulttestingdevel等等)。

  1. 在您需要添加项目build操作之后,您需要检查environment变量(以前声明为$BRANCH),并发现该构建是为哪个分支启动的(主要思想通过使用bash的示例说明)。
  1. 最后,您需要从相应的分支手动获取源。
  2. 接下来,对于所有分支,构建步骤可以是相同的。

这种方法有一些缺点:

  1. 您不能通过存储库中的更改触发此项目(您只能使用Mercurial plugin检查一个分支)。
  2. 所有的子项目都将被重建,即使它们没有改变。
  3. 只适用于静态定义的分支。
  4. 不优雅。

,但与 parameterized build相比,它有一个优势:

  1. 分支的所有工件(和构建日志)都存储在分离的目录中(因为它们是独立的子项目)。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24310297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档