【问题标题】:How to allow multiple Jenkins builds to Tag a Mercurial repository?如何允许多个 Jenkins 构建标记 Mercurial 存储库?
【发布时间】:2015-01-30 17:06:03
【问题描述】:

我们有一个 Mercurial 存储库,并且通常有多个活动分支。 (prev release bug fix、curr release、future 等...) 每个版本都有一个 Jenkins 工作区——由 Hg 提交触发。 问题是我们让 Jenkins 添加了一个 Hg 标签来指示构建发生的位置。 如果我们在 Jenkins 上允许多个构建器,它们有时会几乎同时运行——所以它们都会进行同步、标记、推送。这意味着在那个时候肯定会失败——因为标签推送会失败。

有什么方法可以让多个 jenkins 构建运行 - 但指定一个不能同时运行的短关键部分?

补充:我确实找到了 Jenkins 的“排除插件”,但是在存储库同步之前您无法启动关键部分 - 因为这发生在第一个构建步骤之前。

【问题讨论】:

    标签: jenkins mercurial


    【解决方案1】:

    好的,想通了。 使用 Jenkins 的排除插件,我修改了我们的 hg 标记构建步骤,如下所示:

    # Tag the Build point in Source Control
    hg pull --rev .
    hg tag Build_${BUILD_NUMBER} -m 'Jenkins Added Tag for Build_'${BUILD_NUMBER}
    hg push
    

    然后用关键块开始/停止包装它。

    【讨论】:

      猜你喜欢
      • 2018-05-12
      • 1970-01-01
      • 2012-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-13
      • 2011-11-16
      相关资源
      最近更新 更多