Pre-provisioned runners for low-latency job starts. Warm runners stay idle until a job arrives, reducing startup latency compared to on-demand provisioning.
- Creates a CodeBuild provider with labels
codebuild,linux,x64 - Sets up the GitHub runners infrastructure
- Adds an
AlwaysOnWarmRunnerpool of 2 runners
-
Install dependencies:
pip install -r requirements.txt
-
Edit
app.pyand setownerto your GitHub org or user. -
Deploy the stack:
cdk deploy
-
Follow the setup instructions in the main README.md to configure GitHub integration. Ensure your runners are registered at org level if you use
registration_level="org".
Use this in your GitHub Actions workflow:
name: Test on Warm CodeBuild
on: push
jobs:
test:
runs-on: [self-hosted, codebuild]
steps:
- uses: actions/checkout@v5
- name: Run tests
run: echo "Hello from warm CodeBuild runner!"To remove all resources:
cdk destroy