【问题标题】:How do I get jenkins to build every revision of a subversion repository如何让詹金斯构建颠覆存储库的每个修订版
【发布时间】:2011-11-29 12:48:54
【问题描述】:

我们使用 jenkins 进行持续集成,使用标准的每 10 分钟轮询方案,它运行良好。

现在我想设置一个在 repro 中的每个修订版上运行的作业,它将生成或多或少是对应于特定提交的二进制补丁。

我想出的唯一方法是在 svnserver 上使用 post-commit 挂钩,在 jenkins 服务器上排队作业,但我宁愿不这样做,因为它需要在防火墙上打一个新洞(并且我认为 jenkins 将所有排队的作业合并为一个)。

【问题讨论】:

  • 我认为 CruiseControl.Net 可以做到这一点。但非常有兴趣看到 Jenkins 的解决方案!

标签: svn jenkins artifacts


【解决方案1】:

我自己没有尝试过,但是您可以使用另一个构建来触发您的颠覆构建。

例如,您可以设置一个构建,每 10 分钟从您的 subversion 存储库执行一次标准轮询。然后让此版本确定自上次以来发生的所有新修订号。然后让它排队多个参数化构建(每个版本一个)。

有多种方法可以做到这一点,但如果我这样做,我可能会让主构建使用 python 构建步骤来计算所有修订,然后我会使用 parameterized trigger plugin 将辅助构建排队.

最后一步可能有点混乱,因为我不知道有任何插件可以让您将多个构建排队。这是蛮力的,但您可以设置一系列构建变量(SVN_REV_1、SVN_REV_2、...),然后设置多个触发器(每个潜在变量一个触发器)。只要你有更多的,然后你曾经通过新的修订,你应该是好的。 (注意:可能有更好的方法来做到这一点)

为了确保您不会错过其中任何一个,我建议您将投票增加为每分钟运行一次。我们在这里为我们的一个构建做了类似的事情,更频繁的轮询负载从来都不是问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-05-29
    • 2012-07-16
    • 1970-01-01
    • 2012-01-16
    • 1970-01-01
    • 2014-03-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多