I have several projects in an organisation on GitHub that all share the same self-hosted runners, which in turn all run on the same machine with (say) 64 cores. The CI/CD workflow for these projects vary greatly, from requiring 1 to 32 cores. I want to be able to allocate based on the number of cores used, capping at 64. Is there any way to do this?
Currently, I just have 10 identical runners, but I figure something like classes 32core_runner
, 2core_runner
etc would make more sense, but then is there a way to prevent the second 32core_runner
from starting if e.g. one 32_core_runner
and 16 2core_runner
s are active and another 32core_runner
is requested (i.e. just put in the queue)?