BuildGrid

What is BuildGrid?

BuildGrid is a remote execution and caching service which implements Google’s Remote Execution API and the Remote Workers API.

The project’s goal is to be able to execute build jobs remotely on a grid of computers in order to massively speed up build times. Worker machines on the grid should be able to run with different environments.

BuildGrid works with clients such as Bazel, BuildStream, and RECC, and is designed to be able to work with any client that conforms to the above API protocols.

Worker machines connect to the grid via bot processes which implement the Remote Workers API specification. These bots actually execute the jobs on the backend whilst BuildGrid is responsible for scheduling and storage. The BuildBox ecosystem provides a suite of bots and sandboxing tools that work with the Workers API and can be used with BuildGrid.

Quickstart

To quickly try out BuildGrid, we provide pre-built container images, and a simple docker compose configuration example which starts up BuildGrid’s services at localhost:50051.

git clone https://gitlab.com/BuildGrid/buildgrid
cd buildgrid
docker compose -f docker-compose-examples/all-in-one.yml up

Using BuildGrid

Resources