Track failed CI builds with Snowplow
What does this MR do and why?
This MR adds a Sidekiq worker and service that sends Snowplow tracking events whenever a CI build's state has changed to failed
. It captures the exit code as reported by the Runner, sending it and related build information (namely the types of the artifacts produced by the build) to Snowplow. The change was modelled after the pattern established by the TrackSecureScansWorker
.
https://gitlab.com/gitlab-org/iglu/-/merge_requests/78 was also opened to create the iglu
schema that this event conforms to.
Related issues
How to set up and validate locally
- Running the
track_failed_build_service_spec.rb
andtrack_failed_build_worker_spec.rb
specs should demonstrate that the change is valid.
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by James Liu