Building and testing at scale often involves codebases with millions of lines of code, worked upon by thousands of developers. One solution to the problem of building as quickly as possible is simply delegating that responsibility — not to the machine that the developer is working on, or even to a server that the CI job has been dispatched to, but to a server farm...
When building software, we know that we need to be fast and we know we need to minimise any wasted time in the process. Introducing Remote Execution to builds will help to achieve this, but how do the different solutions compare? That's where the Remote Execution API Testing Project comes in...
As mentioned in the first part of this article, An Introduction to Distributed Builds and Remote Execution, there is no single solution to the problem of building software in a distributed manner. This description will focus on a solution based on the Remote Execution API.
Remote Execution API
Part of creating software involves translating source code into instructions that can be executed by hardware and packaging the results in a way that can be consumed by users. That process is known as building (although colloquially it sometimes can be referred to as compiling).
For small programs …
If you've ever looked into remote build caching and execution and read about it on Bazel's related documentation page, you may have wondered what BuildGrid is and why it is advertised there as a remote execution implementation. BuildGrid is a compile farm system that implements a remote build execution service …
Tristan explains his new initative BuildStream and what it could mean for GNOME in 2017.