Add support for Remote Execution API
Is your feature request related to a problem? Please describe. Building test farm is not very trivial problem, you can start with using open sourced tools like DeviceFarmer(ex OpenSTF), but it will solve only part of your challenges. Google introduced Remote Execution API to support horizontal scaling of their build system Bazel, but this API can be easily adopted to for many things. One of them - run tests.
Remote Execution API covers most of important topics:
- Delivering build artifacts to workers
- Executing command on remote workers
- Providing access to execution results
Describe the solution you'd like
Implement new vendor module using RE API for Android(and iOS in the future).
Describe alternatives you've considered
- Remote Worker API, also introduced by Google. Design doc
- SSH based implementation
Additional context Open sourced implementations of Remote Execution API:
- bazel-remote (open source, cache only)
- Buildbarn (open source)
- BuildBuddy (commercial & open source)
- Buildfarm (open source)
- BuildGrid (open source)
Open sourced implementations of Remote Worker API:
- BuildGrid (open source)