test: Add initial go/cros-f20 API definition
This is an iteration on the F20 API based on feedback in Q4'19.
Major changes:
- Use of Common Expression Language for most filtering requirements:
this allows us to gradually add feature support for the power of
filtering in various places and keeps the API simple and in-line
with industry practices.
- Introduction of progress reporting service, inspired by the
ResultSink protocol for ResultDB - This ensures that we allow
streaming of results and logs from a batched invocation of tests.
Notes:
- There is no support in this API iteration for "groups of tests with
common setup & teardown". The requirements for that feature will be
made more concrete and the API will be expanded through alpha support.
- The protobuf messages do not yet have all API annotations required by
http://aip.dev but is somewhat api-linter clean otherwise.
BUG=chrmoium:1029380
TEST=./generate.sh
Change-Id: I7f7608d1c95fbb2fb55fd3bdc5603598a2fcbf15
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/infra/proto/+/2046055
Reviewed-by: Alex Zamorzaev <zamorzaev@chromium.org>
Reviewed-by: Katherine Threlkeld <kathrelkeld@chromium.org>
Commit-Queue: Prathmesh Prabhu <pprabhu@chromium.org>
Tested-by: Prathmesh Prabhu <pprabhu@chromium.org>
14 files changed