I’ve seen it’s possible to route jobs to specific agents using labels. However, that is too strict for me, I’ll explain why.
I have 3 runners:
- linux/arm64 (native)
- linux/arm64 (emulated, uses qemu-user-static)
In general, I want to select runners by platform (and the documented
platform pipeline section looks good to me for this part), and arm builds can be picked up by either arm runner.
However, I’d like to run some builds only on native runners. The documentation clearly says that if labels are defined for a pipeline, they will be picked up by a runner only if all the labels defined by a runner match the ones defined in the pipeline.
Therefore I expected that if I don’t define any labels in the pipeline, any runner would pick it up, so I added
qemu:yes/no labels to all my runners.
However, pipelines with no labels defined aren’t being picked up by any runner.
How can I get this behavior?