-
Hello, I'm trying to migrate from the legacy ARC to the new gha-runner-scale-set. With the legacy ARC I had a RunnerDeployment and added multiple labels. e.g.
Is it also possible to add multiple runner labels to a gha-runner-scale-set? Thanks for helping me! Timon |
Beta Was this translation helpful? Give feedback.
Replies: 7 comments 46 replies
-
Labels are not supported and there are no plans to support them. It's already discussed in our documentation: Runner scale sets cannot be comprised of heterogeneous types of runners (different OSs, specs etc.). As such, each deployment should have a specific runner configuration and a unique name. If you want different types of runners, you need to configure different runner scale sets. |
Beta Was this translation helpful? Give feedback.
-
The reason we opted for single labels on ARC (and are doing the same thing on the larger hosted runners as well) is to get us ready to improve the Dev UX about 'why isn't my job starting'. When we had multiple labels, doing deterministic assignment of jobs to a 'scale set' wasn't possible. The ven diagram of runners that matched labels vs. the labels I was looking for meant that jobs always just waited until 'something was free' and 'where' something would start was less clear. This conflicted with a reasonably high request we had to 'see the queue of jobs and when mine will start'. To mitigate this, we want to move to a world of more deterministic assignment of jobs to a scale set that takes jobs in a FIFO fashion. We made the decision that the way to approach this was to move to single named scale sets/queues as a target. That way when a job is assigned it 'goes to its queue and waits' rather than sitting in some meta queue of all jobs for all potential machines. I do appreciate that this results in a change in workflow files :( this is why we haven't “done away” with multiple labels at a system level yet. What we don't really want to do, if we can help it, is to create an experience that is good for our hosted machines to review their queue but sucks for self-hosted as no one moves off multi label. Which lastly led to the decision – what if we used new ARC as a bit of a forcing factor for this to help gently nudge people to the future if people want to come over. |
Beta Was this translation helpful? Give feedback.
-
👋 I don't want to dupe out too much and @tmehlinger had put quite a full and detailed single breakdown here #3340 so I have added some updates there following more discussions with @juliandunn and other folks :) |
Beta Was this translation helpful? Give feedback.
-
I am trying to use CodeQL with self-hosted runners. The documentation over here on GitHub's help page says to add a label to the runner, but it seems like ARC does not support adding additional labels. Would I have to create a scale-set just for CodeQL with a |
Beta Was this translation helpful? Give feedback.
-
Gah - only 2 weeks ago I finally got over the hurdle that the git cli was finally added to the runner container and now this 🤯 Not being able to even use the self-hosted label is painful |
Beta Was this translation helpful? Give feedback.
-
There is not even an option in GitHub org settings to forbid using public runners. With such option, going live with |
Beta Was this translation helpful? Give feedback.
-
The decision here seems to contradict guidance GitHub give for other parts of their product suite. See Configuring self-hosted runners for code scanning in your enterprise Enabling GHAS Code scanning on self hosted runners requires you to set a label called "self-hosted". Between this thread and that document am I to take it that you cannot use Code scanning on self hosted runners when using ARC? This seems a bit short sighted. And before anyone suggests it we are moving to EMU and removing access to public runners through that. |
Beta Was this translation helpful? Give feedback.
Labels are not supported and there are no plans to support them. It's already discussed in our documentation:
Here: https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/deploying-runner-scale-sets-with-actions-runner-controller#about-runner-scale-sets
and here: https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners-with-actions-runner-controller/about-actions-runner-controller#using-arc-runners-in-a-workflow
Runner scale sets cannot be comprised of heterogeneous types of runners (different OSs, specs etc.). As such, each deployment should have a specific runner configuration and a unique n…