GitHub¶
runner.li serves GitHub Actions for repositories on GitHub.com. GitHub Enterprise Server is available on request.
Connect a repository¶
runner.li uses a GitHub App that you create in your own organization, so you keep control of what it can access.
- An owner of your GitHub organization creates a GitHub App:
- no webhook
- repository permissions Administration: read and write and Actions: read, nothing else
- installable only on your account
- Generate a private key for the app and install the app on the repositories that should use runner.li, not on the whole organization.
- Send us the app ID, the installation ID and the private key through the secure channel agreed at onboarding.
runner.li requests short-lived installation tokens for one repository at a time, with only the runner permissions. Installing the app on more repositories does not give any one of them more access.
Use it in a workflow¶
We assign a label at onboarding. To switch without a commit each time, read it from a repository variable:
jobs:
test:
runs-on: ${{ vars.RUNS_ON || 'ubuntu-latest' }}
Set the repository variable RUNS_ON to the runner.li label to move jobs to runner.li. Delete the variable to move them back to GitHub's runners at once.