Skip to content

From scale-up to wiped disk

BYOC runner lifecycle

What happens between a job being queued and the runner instance being destroyed, and where you can intervene.

Runners are ephemeral: one job, one instance, destroyed afterwards. The lifecycle matters mostly when something goes wrong in the middle of it.

  1. A job is queued and matched to a runner group by label
  2. If warm capacity exists the job starts immediately; otherwise the ASG scales up
  3. The instance boots, registers with GitHub using a short-lived registration token, and claims the job
  4. The job runs; logs stream to GitHub and metrics to the control plane
  5. On completion the runner deregisters, the disk is wiped and the instance is terminated

Scale-down safety

Scale-in is drain-based: an instance running a job is protected from termination until the job finishes. This is why a scale-down after a burst is not instant, and why it should not be.

Your next build could be twice as fast, at half the price

Start free. Migrating away is the same one line, and we publish that diff too.