我们正在使用 Bamboo 来构建我们的代码、创建工件和部署。
问题场景
我有一个包含 3 个工作(开发/测试/产品)的阶段的计划。这些作业构建代码并发布一个 16-20Mb 的工件作为共享工件。当我运行这个计划时,所有 3 个作业的发布需要 8-9 分钟。所有 3 个作业的发布时间大致相同。
这是一个示例日志语句:
simple 10-Sep-2021 13:46:15 Publishing an artifact: Preview Artifact
simple 10-Sep-2021 13:55:09 Finished publishing of artifact Required shared artifact: [Preview Artifact], pattern: [**/Artifact.*.zip] in 8.897 min
我进入构建服务器(Windows Server 2012)并查看了工作目录和工件目录中的工件文件。它们确实与文件时间戳相差近 9 分钟。
这是非常一致的。我可以查看许多以前的构建,并且始终需要 8 或 9 分钟。
固定场景
我刚刚编辑了计划并禁用了 2 个工作。现在工件发布步骤只需要几秒钟:
27-Sep-2021 15:20:19 Publishing an artifact: Preview Artifact
27-Sep-2021 15:20:56 Finished publishing of artifact Required shared artifact: [Preview Artifact], pattern: [**/Artifact.*.zip] in 37.06 s
问题
当我运行并发作业时,为什么工件发布如此缓慢?在可能需要这么长时间的发布工作步骤中,竹子在做什么?
我有 20 个其他构建计划(不使用并发作业),其中工件复制需要不到一分钟的时间。我从来没有在任何其他计划中看到过这个问题。
我在文档中没有看到任何特别之处,当我搜索 Google 和 Stack Overflow 时也找不到这样的问题。我需要共享工件,因为我在部署项目中使用它。
编辑:
现在想起来,37秒也太长了。我只是手动复制了文件,花了大约一秒钟。为什么即使没有并发作业也需要这么长时间?