Configure Self-hosted runner permissions

Hi there,

I have a use case I couldn’t figure out how to config.

  • let’s say I have a org, which has 4 repos: repo-a, repo-b, repo-c, repo-d and 4 self-hosted runners: runner-001, runner-002, runner-003, runner-004
  • How can I configure the org or repo so that:
  1. runner-001 and runner-002 are shared between repo-a and repo-b. (repo-c, repo-d cannot use them)
  2. and, runner-003 and runner-004 are shared between repo-c, repo-d. (repo-a and repo-b cannot use them)

Is this doable?

@yhe13,

Currently, we have no any method to meet the requests like as you mentioned.

On organization level, the repository permissions for self-hosted runners you set are applied to all the self-hosted runners. GitHub does not support setting different repository permissions for each self-hosted runner.

If you want each repository only can use the specific self-hosted runners, you can add the repository level self-hosted runners in each repository.

To view more details, you can see “Managing access to self-hosted runners”.

1 Like

Thanks for your reply!

I see. that means for any org, self-hosted runner can only be configured either dedicated to one repo or share for all repos.

For large orgs that has 1000+ repos, share runner for all repos doesn’t seem to be practical, each sub-group needs to have their own resources. however, dedicated runner to one repo will limit the ability to share runners within that subgroup.

self-hosted runner permission structure needs to be improved so that it is more flexible to support large orgs.

@yhe13,

Thanks for your feedback.
GitHub takes your suggestions very seriously, and the suggestions are very helpful for improving GitHub.

If your projects really need the feature that users can assign different self-hosted runners to different repositories on an organization, I recommend that you can directly report a feature request here.
That will allow you to directly interact with the appropriate engineering team, and make it more convenient for the engineering team to collect and categorize your suggestions.

Thank you.
I saw there is a feature planned for Q3 https://github.com/github/roadmap/issues/73
looks like this will solve the issue. will test it out once it is available.

@yhe13,

Looks like this feature is in plan. And currently it seems only available to the GitHub Enterprise SKU.
Hope this feature can be released to all the GitHub Products as quick as possible, so that it can be available to all GitHub users.