繁体   English   中英

在 Jenkins 中并行运行相同的管道

[英]Run same pipeline in parallel in Jenkins

我对詹金斯比较陌生。 我在 Jenkins 中创建了一个声明性管道,要求用户输入他们的分支名称,然后 Jenkins 构建该特定分支(例如,origin/mybranch)。 这允许我为特定分支运行一组快速测试。

开发人员可以多次运行管道,今天我阻止多个这样的管道同时运行,因为如果这样做,一个会覆盖另一个。

发生这种情况是因为第一个管道写入 c:\\Jenkins\\workspace\\QuickBuild 并且当另一个此类作业运行写入该完全相同的文件夹时,会终止原始运行。

阻塞是我找到的防止这种情况的解决方案,但我希望这样当一次运行完成(使用少于 8 个内核)时,队列中的下一次运行将已经开始运行,并且释放了任何内核。

我会虽然这将是詹金斯的基本概念。 我错过了什么吗? 我做错了吗?

按照 MaratC 和 Zett42 的建议,我最终将其添加到我的脚本中:

    agent
    {
        node {
            customWorkspace "${params.Branch}"
        }
    }

这会导致 Jenkins 在不同的文件夹中创建每个构建,并且它们不会相互影响。

唯一的缺点是你不能同时构建同一个分支,但这是一个极端情况。 此外,我还可以向工作区添加一个随机数以启用此功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM