Skip to content

Self-Hosted VM Runner

The real VM apply gate uses a self-hosted macOS runner because GitHub hosted macOS runners do not reliably boot nested Lima VMs.

Do not install the VM runner as a macOS service.

Keep the runner offline by default. Start it manually only when you intentionally want to run the VM apply gate.

The runner must have the hostshift-vm label:

runs-on: [self-hosted, macOS, hostshift-vm]
Terminal window
cd ~/actions-runner-hostshift
./run.sh

Stop it with Ctrl-C after the workflow finishes.

Do not run:

Terminal window
sudo ./svc.sh install
sudo ./svc.sh start

Use the VM E2E Apply workflow, or the CI workflow with run_vm_apply checked.