[chromium] install goma
From this thread on chromium-dev:
Chrome's build time is getting longer and longer. According to https://groups.google.com/a/chromium.org/forum/#!msg/chromium-dev/ThDAjO7fTro/bPQzvbVLAgAJ, build time was 30 minutes in July 2014, but it is now more than 150 minutes (without jumbo) in 2017 on particular Mac.
Google is internally using a distributed compiler service, Goma. With Goma, chrome can be built in a few minutes. However, it's available only for googlers, so non googlers need to wait for long time to build chrome, and this must be painful.
To cope with this, Goma team is working so that all Chromium developers can utilize improved compile performance enabled by Goma.
As a first step, Goma team has made the client code open source in https://chromium.googlesource.com/infra/goma/client/
Unfortunately, Goma server is not publicly available yet, but we're working on this. We hope we can make the server publicly available this year so that all Chromium developers can be more productive. Stay tuned.
I think we should install Goma in the Chromium Docker image, allowing users to configure and use Goma once it becomes more accessible (e.g. with a Chromium committer access token of some sort).
I think making the basis goma server shouldn't be a problem.
Steps on how to make Goma server.
Must have
- Uploads the code to remote powerful server; FTP maybe.
- Builds the code like it would run on any server; some shell scripting
- Returns the binary/build/executable.
Good to have
- Cache of os on remote server, upload only changes between commits, i.e. delta/diff.
It feels like this is simple to me. Anyone can build it simply.
What am I missing here?