【问题标题】:Running more than 4 jobs in parallel with CircleCI与 CircleCI 并行运行 4 个以上的作业
【发布时间】:2019-10-16 12:46:54
【问题描述】:

如果我有一个像这样的.circleci/config.yml 文件:

version: 2
jobs:
  build-node8:
    docker:
      - image: oresoftware/lmx-circleci:8
    steps:
      - checkout
      - run: ./scripts/circleci/run.sh
  build-node9:
    docker:
      - image: oresoftware/lmx-circleci:9
    steps:
      - checkout
      - run: ./scripts/circleci/run.sh
  build-node10:
    docker:
      - image: oresoftware/lmx-circleci:10
    steps:
      - checkout
      - run: ./scripts/circleci/run.sh
  build-node11:
    docker:
      - image: oresoftware/lmx-circleci:11
    steps:
      - checkout
      - run: ./scripts/circleci/run.sh
  build-node12:
    docker:
      - image: oresoftware/lmx-circleci:12
    steps:
      - checkout
      - run: ./scripts/circleci/run.sh

这里列出了 5 个作业,但是当构建开始时,只有 4 个作业并行运行。有没有办法并行运行 4 个以上的作业,那里有硬性限制吗?

我的猜测是,在工作流下,我可以改变并行度?

workflows:
  version: 2
  build_nodejs:
    parallelism: 5
    jobs:
      - build-node8
      - build-node9
      - build-node10
      - build-node11
      - build-node12

也许这需要一个付费帐户?

【问题讨论】:

标签: circleci circleci-2.0 circleci-workflows


【解决方案1】:

简答:

CircleCi 允许您并行运行任意数量的作业,只要您的付款计划有足够的容器来服务每个作业。

我怀疑您的计划只有 4 个容器。您可以在 CircleCi 的设置选项卡中查看您有多少容器

在下面的示例中,我总共有 2 个容器可用:1 个付费 + 1 个免费。所以现在我最多只能并行运行 2 个作业。我可以为每个容器每月额外支付 50 美元来添加额外的容器。

其他详情:

这篇文章很好地概述了如何配置 circle ci 作业以并行运行(实际上它有一个示例,其中 5 个作业并行运行)。 https://circleci.com/blog/decrease-your-build-times-by-running-jobs-in-parallel-with-workflows/

关于您在问题中粘贴的配置文件代码 sn-p - 看起来不错(您不需要 parallelism: 5 标志,因为 circle 将自动使用所有可用的计划容量)

您能否检查一下您的计划中有多少个容器,然后再报告?

仅供参考 - CircleCi 容器和并发作业计划信息: https://circleci.com/pricing/

【讨论】:

    猜你喜欢
    • 2019-06-15
    • 2014-01-25
    • 2023-03-29
    • 1970-01-01
    • 2011-09-24
    • 1970-01-01
    • 1970-01-01
    • 2015-04-26
    • 2018-10-20
    相关资源
    最近更新 更多