Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!
-
straight forward to set up self-hosted runners following instructions
-
No need for the machine to be publicly accessible
-
Currently, a runner can be configured to accept only 1 repo in a personal account (which is inconveneint) or multiple repositories in a GitHub organization.
-
A self-hosted runner is able to use SSH keys on the host. However, if a Docker container is used with a self-hosted runner, you have to properly expose SSH keys on the host to the Docker container. A feasible way is to
1. Configure the GitHub Action workflow to mount `$HOME/.ssh` to `/ssh`. 2. Copy `/ssh` to `/root/.ssh` in the Docker container. 3. Run `chmod 600 /root/.ssh/*` to ensure right permissions of SSH keys and configuration files.
Idle Organization Runners Which Don't Pick up Jobs
Self-hosted runner registered as idle but not picking up jobs #26823