Dev Team Ditches GitHub Cloud Minutes With Self-Hosted VirtualBox CI Runner

A development team split their monorepo into five separate repositories, only to find that independent CI pipelines rapidly consumed their free GitHub Actions minutes allowance. Rather than pay for additional cloud minutes, they set up a self-hosted runner on a standard Windows office laptop running Ubuntu inside a VirtualBox virtual machine. The single VM was configured to serve all five private repositories in turn, with each job preceded by an automatic rollback to a clean snapshot to prevent build contamination. GitHub's built-in ephemeral runner flag was insufficient on its own, as it does not restore the filesystem, prompting the team to write a custom REST API polling script as an external controller. Early stability issues, including zombie VirtualBox processes and a watchdog script that inadvertently blocked its own health checks, required additional fixes and led to a multi-day debugging effort the team plans to detail in a follow-up post.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.


Discussion (0)
Log in to join the discussion and vote.
Log in