Skip to content
Latchkey

Migrate from AWS CodeBuild GitHub Actions Runners to Latchkey

CodeBuild hosts GitHub Actions runners inside your AWS account. Latchkey hosts them for you. Here is exactly what changes when you move.

According to AWS CodeBuild docs, running GitHub Actions on CodeBuild means creating a Runner-type CodeBuild project, connecting GitHub, configuring a webhook that filters WORKFLOW_JOB_QUEUED events, and targeting it with a runs-on label of the form codebuild-<project>-${{ github.run_id }}-${{ github.run_attempt }}. That is powerful if you are all-in on AWS, but you own the project, the IAM service role, the VPC wiring, and the webhook. Latchkey runs the same jobs on fully-managed, self-healing runners reached by a one-line runs-on change, with no AWS account or infrastructure to operate. Here is how a migration looks.

CodeBuild-hosted runners vs Latchkey

CapabilityAWS CodeBuild (self-hosted runner)Latchkey
Where runners liveYour AWS accountFully managed for you
SetupCodeBuild project + IAM role + webhookOne-line runs-on label swap
AWS account / IAM / VPC requiredYesNo
Webhook to configureYes (WORKFLOW_JOB_QUEUED)No
Self-healing (auto-retry transient failures)NoYes
Deep AWS integrationYes (IAM, VPC, AWS services)Not AWS-native
Best known forAWS-native runners you operateManaged self-healing runners, no AWS setup

What CodeBuild is genuinely good at

CodeBuild is AWS-native. According to AWS CodeBuild docs, its GitHub Actions runners run inside your account with an IAM service role and can run in your VPC to reach resources like RDS or ElastiCache. If your builds already assume AWS credentials, private subnets, and tight IAM boundaries, that native integration is a real advantage and a good reason to stay.

What you stop operating with Latchkey

Latchkey removes the pieces you configure and maintain in AWS: no Runner-type CodeBuild project, no service role to scope, no VPC subnets and security groups to wire up, and no WORKFLOW_JOB_QUEUED webhook to debug. GitHub Actions sees a managed runner, and transient or mechanical failures self-heal and retry automatically instead of failing the job.

How the migration works

  • Pick one workflow and change its runs-on from the codebuild-<project>-... label to the Latchkey label.
  • Run it side by side with the CodeBuild path and compare wall-clock time and reliability on real builds.
  • Roll out remaining workflows one label at a time; your YAML, actions, and steps stay the same.
  • Keep CodeBuild for any job that truly needs in-VPC AWS access, and move the rest.

The verdict

Stay on CodeBuild for jobs that need native, in-VPC AWS access and tight IAM. For everything else, if operating a CodeBuild project, service role, VPC, and webhook is more than you want to own, Latchkey gives you fully-managed self-healing runners with a one-line runs-on swap. Pilot it on one workflow and compare against your real CodeBuild builds.

Frequently asked questions

Is Latchkey a drop-in replacement for CodeBuild-hosted runners?
Both attach runners to GitHub Actions via the runs-on label, so switching a workflow is a label change. The difference is operational: CodeBuild runs in your AWS account with an IAM role, VPC, and webhook you maintain, while Latchkey is fully managed with none of that setup.
Where can I verify these CodeBuild details?
These points come from AWS CodeBuild docs and the AWS CodeBuild pricing page (reviewed 2026-07-02). AWS pricing varies by Region and compute type and changes over time, so verify current rates and free-tier terms on the AWS pricing page before you budget. Primary sources: AWS CodeBuild docs, "Configure a CodeBuild-hosted GitHub Actions runner": https://docs.aws.amazon.com/codebuild/latest/userguide/action-runner.html | AWS CodeBuild docs, "Troubleshoot the webhook": https://docs.aws.amazon.com/codebuild/latest/userguide/action-runner-troubleshoot-webhook.html | AWS CodeBuild docs, "Compute images supported with the CodeBuild-hosted GitHub Actions runner": https://docs.aws.amazon.com/codebuild/latest/userguide/sample-github-action-runners-update-yaml.images.html | AWS CodeBuild pricing: https://aws.amazon.com/codebuild/pricing/ | AWS CodeBuild docs, "Quotas for AWS CodeBuild": https://docs.aws.amazon.com/codebuild/latest/userguide/limits.html

Related guides

References

Cut runner spend by up to 70% with Latchkey managed runners and self-healing. Start free → 30-day trial · No credit card