Skip to content

Commit

Permalink
reporter: Report flaky jobs to Sentry
Browse files Browse the repository at this point in the history
Part of #21
  • Loading branch information
agis committed Aug 28, 2020
1 parent f0b30d3 commit 1be0009
Showing 1 changed file with 20 additions and 1 deletion.
21 changes: 20 additions & 1 deletion lib/rspecq/reporter.rb
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,12 @@ def report

@queue.record_build_time(tests_duration)

flaky_jobs = @queue.flaky_jobs

puts summary(@queue.example_failures, @queue.non_example_errors,
@queue.flaky_jobs, humanize_duration(tests_duration))
flaky_jobs, humanize_duration(tests_duration))

flaky_jobs_to_sentry(flaky_jobs, tests_duration)

exit 1 if !@queue.build_successful?
end
Expand Down Expand Up @@ -99,5 +103,20 @@ def failure_formatted(rspec_output)
def humanize_duration(seconds)
Time.at(seconds).utc.strftime("%H:%M:%S")
end

def flaky_jobs_to_sentry(jobs, build_duration)
return if jobs.empty?

Raven.capture_message("Flaky jobs detected", level: "warning", extra: {
build: @build_id,
build_timeout: @timeout,
queue: @queue.inspect,
object: self.inspect,
pid: Process.pid,
flaky_jobs: jobs,
flaky_jobs_count: jobs.count,
build_duration: build_duration
})
end
end
end

0 comments on commit 1be0009

Please sign in to comment.