buildbarn / bb-event-service

An implementation of the Build Event Service to log and display the output of build runs
Apache License 2.0
18 stars 11 forks source link

NOTICE: This project has been archived!

As discussed in bb-browser#21, support for Build Event Streams is going to be removed from Buildbarn. We invite people in the community to build a more complete solution for ingesting and displaying Build Event Streams!

Buildbarn Event Service Build status

Buildbarn Event Service is an implementation of Bazel's Build Event Service. In short, this service can be used to log and store all sorts of information regarding invocations of Bazel. Information includes the list of targets analyzed, whether they could be built, output files that were generated and test results.

This service heavily builds on top of other Buildbarn components. Instead of having its own storage layer, it can store its results into the Buildbarn storage daemon. Build event streams are stored in the Content Addressable Storage (CAS), while entries that permit lookups of these streams by Bazel invocation ID (a per-invocation UUID) are stored in the Action Cache (AC).

Buildbarn Browser has integrated support for displaying build event streams stored in the CAS/AC by visiting /build_events/<instance>/<uuid>. For builds that also used remote execution, Buildbarn Browser is capable of linking directly to output files of build actions, making it a valuable tool for sharing build results with colleagues. By invoking Bazel with --bes_results_url=..., it may automatically print URLs pointing to Buildbarn Browser at the start of every invocation.

Prebuilt container images of Buildbarn Event Service may be found on Docker Hub. Examples of how the Buildbarn Event Service may be deployed and used can be found in the Buildbarn deployments repository.