最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

continuous integration - How to limit the number of concurrent execution of high-loading jobs for a GitLab runner? - Stack Overf

programmeradmin0浏览0评论

I'm currently trying to run multiple pipelines on multiple runners using concurrent execution in GitLab CI.

The problem is: some of the jobs are very resource consuming, some are not. I want to run only one resource-consuming job on a single runner, leaving the rest of runner concurrency for the rest of jobs.

I heard about resource groups, but it is not exactly resolves the problem - high-loading jobs still have to run in parallel, but on different runners. (In other words we want to avoid the situation when two resource-consuming jobs being run on the same runner)

Is it possible to do that somehow?

I'm currently trying to run multiple pipelines on multiple runners using concurrent execution in GitLab CI.

The problem is: some of the jobs are very resource consuming, some are not. I want to run only one resource-consuming job on a single runner, leaving the rest of runner concurrency for the rest of jobs.

I heard about resource groups, but it is not exactly resolves the problem - high-loading jobs still have to run in parallel, but on different runners. (In other words we want to avoid the situation when two resource-consuming jobs being run on the same runner)

Is it possible to do that somehow?

Share Improve this question edited Mar 13 at 14:33 DummyThatMatters asked Mar 13 at 12:01 DummyThatMattersDummyThatMatters 293 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 0

I was able to solve the problem by creating two runners per machine - one with high-load tag and another with normal tag. For high-load runner I've used limit=1 flag to prevent it from taking more than one job simultaneously. And of course you have to mark every resource-consuming job with high-load tag in order to make thing work.

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论