On GitHub, navigate to the main page of the organization.
Under your organization name, click Settings.
In the left sidebar, click Actions.
Under "Self-hosted runners," click Add new, then click New runner.
Select the operating system and architecture of your self-hosted runner machine.
You will see instructions showing you how to download the runner application and install it on your self-hosted runner machine.
Open a shell on your self-hosted runner machine and run each shell command in the order shown.
Note: On Windows, if you want to install the self-hosted runner application as a service, you must open a shell with administrator privileges. We also recommend that you use
C:\actions-runner
as the directory for the self-hosted runner application so that Windows system accounts can access the runner directory.The instructions walk you through completing these tasks:
- Downloading and extracting the self-hosted runner application.
- Running the
config
script to configure the self-hosted runner application and register it with GitHub Actions. Theconfig
script requires the destination URL and an automatically-generated time-limited token to authenticate the request.- On Windows, the
config
script also asks if you would like to install the self-hosted runner application as a service. For Linux and macOS, you can install a service after you finish adding the runner. For more information, see "Configuring the self-hosted runner application as a service."
- On Windows, the
- Running the self-hosted runner application to connect the machine to GitHub Actions.
Configureing as a Service
- Stop the self-hosted runner application if it is currently running.
Install the service
Start the service
Check the status of the service
sudo ./svc.sh stop sudo ./svc.sh install sudo ./svc.sh start sudo ./svc.sh status
Checking that your self-hosted runner was successfully added
After completing the steps to add a self-hosted runner, the runner and its status are now listed under "Self-hosted runners".
The self-hosted runner application must be active for the runner to accept jobs. When the runner application is connected to GitHub and ready to receive jobs, you will see the following message on machine's terminal.
√ Connected to GitHub
2019-10-24 05:45:56Z: Listening for Jobs
For more information, see "Monitoring and troubleshooting self-hosted runners."
Checking the status of a self-hosted runner
Under "Self-hosted runners," you can view a list of registered runners, including the runner's name, labels, and status.
The status can be one of the following:
- Idle: The runner is connected to GitHub and is ready to execute jobs.
- Active: The runner is currently executing a job.
- Offline: The runner is not connected to GitHub. This could be because the machine is offline, the self-hosted runner application is not running on the machine, or the self-hosted runner application cannot communicate with GitHub.
Related articles
Adding a self-hosted runner to a repository
Adding a self-hosted runner to an organization
How to use GitHub Actions with your own self-hosted runner (aka build agent)
Configuring the self-hosted runner application as a service
Monitoring and troubleshooting self-hosted runners