Scaling your self-hosted runners
Installing the action runner on existing build machines allows for easy migration to GitHub. But this is not a long-term solution! If you can't use the hosted runners, you should build an elastically scaling build environment yourself.
Ephemeral runners
If you build an elastic scaling solution for your build machines or container, you should use ephemeral runners. This means you use a virtual machine or Docker image from a blank image and install a temporary runner. Then, everything gets erased after the run. An elastic scaling solution with persistent runners is not recommended!
To configure your runner to be ephemeral, you pass the following argument to the config
script:
$ ./config.sh --ephemeral
Scaling up and down with GitHub webhooks
To scale your virtual environments up and down, you can use GitHub webhooks. The workflow_job
webhook gets called with the queued
action key if a new workflow is queued. You can use this event...