GitHub Actions and AWS CodeBuild - The Ultimate Guide for Container Nerds July 29, 2025, 12:29 p.m.

AWS CodeBuild provides a managed way to provide so-called “self-hosted” runners for your GitHub Actions workflows.

CodeBuild does not offer a long-running runner, but instead provisions a new instance for every job. It uses CodeConnections to install a webhook at the repo or org level. This webhook subscribes to multiple events and ensures that a CodeBuild instance starts if a job begins with a matching runs-on.

What’s not always obvious (and often confusing):

  • CodeBuild provides EC2, Container, and Lambda runtimes, which can be defined per project (this is simplified, the actual configuration options are very confusing).
  • In GitHub Actions, runs-on can include a container image. This overrides the CodeBuild project configuration (and cannot be restricted).
  • The size of the runner can also be configured in runs-on, again overriding the CodeBuild project (no restriction possible here either).

To understand these nuances, let’s look at a few scenarios. In all cases, assume a CodeBuild project is configured to use EC2 as the compute option.

aws ci docker github

Codeship July 22, 2014, 12:57 p.m.

Continuous Delivery and Integration server.

ci testing integration django github programming webdev sysadmin