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 | shInstall and start as a system service (recommended):
# Linux (requires sudo)
sudo cirun-agent --api-token <API_TOKEN> --install-service
# macOS
cirun-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-runner
cloud: on_prem
instance_type: 8vcpu-8gb-51gb
machine_image: "cirunlabs/macos-sequoia-runner:latest"
region: RegionOne
labels:
- cirun-macos-runnerFor Linux:
runners:
- name: cirun-linux-runner
cloud: on_prem
instance_type: 8vcpu-8gb-75gb
machine_image: "ubuntu:latest"
region: RegionOne
labels:
- cirun-linux-runnerConfigure 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.