GetConsoleSummariesFromDefs returns a map of consoleID -> summary from the datastore using a slice of console definitions as input.
This expects all builders in all consoles coming from the same projectID.
BuilderID is the universal ID of a builder, and has the form:
SelfLink returns LUCI URL of the builder.
Split breaks the BuilderID into pieces.
- backend is always 'buildbucket' - backendGroup is either the bucket or builder group - builderName is the builder name.
Returns an error if the BuilderID is malformed (wrong # slashes) or if any of the pieces are empty.
ConsoleRow is one row of a particular console.
It has the git commit for the row, as well as a mapping of column index to the Builds associated with it for this commit. The columns are defined by the order of the Builder messages in the Console config message (one column per Builder message).
Builds is a map since most commit rows have a small subset of the available builders.
GetConsoleRows returns a row-oriented collection of BuildSummary objects. Each row corresponds to the similarly-indexed commit in the `commits` slice.