On Premise
Cirun supports spinning up runners on your own infrastructure. Currently supported platforms:
- macOS: Apple Silicon Macs (Mac Mini, Mac Pro, MacBook)
- Linux: Linux with KVM support
The setup is simple and can be done in a few minutes. You need to install cirun-agent on your machine, which will connect to Cirun's API to spin up on-demand ephemeral VMs for GitHub Actions.
Setting up cirun-agent
-
Create an API token on the Cirun Dashboard
-
Install the cirun-agent:
curl --proto '=https' --tlsv1.2 -LsSf https://raw.githubusercontent.com/cirunlabs/cirun-agent/refs/heads/main/install.sh | sh -
Install and start as a system service (recommended):
# Linux (requires sudo)sudo cirun-agent --api-token <API_TOKEN> --install-service# macOScirun-agent --api-token <API_TOKEN> --install-serviceThe service will start automatically on boot and restart on failure.
Alternative: Run manually in the background:
cirun-agent --api-token <API_TOKEN> & -
Create a
.cirun.ymlfile in your repository:For macOS:
runners:- name: cirun-macos-runnercloud: on_preminstance_type: 8vcpu-8gb-51gbmachine_image: "cirunlabs/macos-sequoia-runner:latest"region: RegionOnelabels:- cirun-macos-runnerFor Linux:
runners:- name: cirun-linux-runnercloud: on_preminstance_type: 8vcpu-8gb-75gbmachine_image: "ubuntu:latest"region: RegionOnelabels:- cirun-linux-runner -
Configure your workflow to use the runner:
runs-on: cirun-linux-runner--${{ github.run_id }}Make sure you have installed the Cirun GitHub App and marked the repository as active on the Cirun Dashboard.