Allow removal of default runner tags
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 6.3k
- Forks
- 1.4k
- Avg merge
- 1d 16h
- Merged PRs (30d)
- 24
Description
Describe the enhancement
Allow a flag (or another mechanism) to remove the default self-hosted, ${operating_system} and ${operating_system_arch} labels when connecting to a privately hosted Github Enterprise installation.
Code Snippet
n/a
Additional information
The current Github Runner agent adds default labels that include the self-hosted, operating system and architecture.
For enterprise rollouts we have a desire for Runners to be attached as an organizational default pool, org specific pools and repo specific pools we have noticed that folks following the default installation instructions will generally not initially tag their runners. The default workflows then use something such as self-hosted as the target. This generally works as long as their runner is the only runner attached.
Occasionally a group will attach another set of runners at an org level and it contains the same default tag. Without any clear change at the repo level, now the runner is randomly scheduled as the repo runner or the org runner.
Additionally some orgs may wish to manage an inhouse set of runners that are available to all orgs. In this case, they can inadvertently be used as well.
While internal documentation and best practice can help in this scenario, having a mechanism that allows the default tags to be removed and replaced would allow our enterprise-wide runners to not attach with self-hosted, and instead attach as enterprise-self-hosted or similar.
This would reduce the chances of a team accidentally building on a runner they did not intend to build on.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with src/Runner.Listener/Configuration/ConfigurationManager.cs at the default-label logic linked in the issue, then trace how runner labels are configured during connection to GitHub Enterprise. Done means an enterprise installation can remove or replace the default self-hosted, operating-system, and architecture labels without unintentionally matching those runner pools.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- ci-cd
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100