Concurrent runners per executor but only one per Project
I'm using gitlab-ci-multirunner to automatically build debian packages for i386 and amd64. I do this using the shell executor calling different schroots. Each architecture has its own job in the .gitlab-ci.yml
file.
Is there a way to have the same runner working concurrently on differen projects, but for each project only one job at a time is processed by each runner?
For example assume I have one runner named ubuntu_builder
and two projects Foo
and Bar
. Each project has the jobs build:deb_amd64
and build:deb_i386
. Currently I've seen the following behavior
- concurrent=1:
- only job at a time is processed
With concurrency enabled in config.toml
- concurrent=4
- all jobs are processed at the same time. One job per project fails because the same files are changed by 2 processes at the same time
I'm looking for a config like concurrent_per_project
- concurrent=4
- concurrent_per_project=1 (or false)
- two jobs are run concurrently. One job from Project
Foo
and one job from projectBar