Skip to content

Commit 77f1242

Browse files
Merge pull request #95 from RodrigoMNardi/feature/github/fetch_test_results
Improved search results in Bamboo
2 parents c09123a + 8a181fe commit 77f1242

File tree

2 files changed

+20
-4
lines changed

2 files changed

+20
-4
lines changed

lib/github/update_status.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -124,8 +124,8 @@ def failure
124124
return failures_stats if @failures.is_a? Array and !@failures.empty?
125125

126126
CiJobFetchTopotestFailures
127-
.delay(run_at: 60.seconds.from_now, queue: 'fetch_topotest_failures')
128-
.update(@job.id)
127+
.delay(run_at: 5.minutes.from_now, queue: 'fetch_topotest_failures')
128+
.update(@job.id, 1)
129129
end
130130

131131
def slack_notify_success

workers/ci_job_fetch_topotest_failures.rb

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@
99
# frozen_string_literal: true
1010

1111
class CiJobFetchTopotestFailures
12-
def self.update(ci_job_id)
12+
def self.update(ci_job_id, count)
1313
@job = CiJob.find(ci_job_id)
1414

1515
@retrieve_error = Github::TopotestFailures::RetrieveError.new(@job)
1616
@retrieve_error.retrieve
1717

18-
return if @retrieve_error.failures.empty?
18+
return if rescheduling(count)
1919

2020
@failures = @retrieve_error.failures
2121

@@ -27,4 +27,20 @@ def self.update(ci_job_id)
2727
execution_time: failure['execution_time'])
2828
end
2929
end
30+
31+
def self.rescheduling(count)
32+
return true if count > 3
33+
34+
if @retrieve_error.failures.empty?
35+
count += 1
36+
37+
CiJobFetchTopotestFailures
38+
.delay(run_at: (5 * count).minutes.from_now, queue: 'fetch_topotest_failures')
39+
.update(@job.id, count)
40+
41+
return true
42+
end
43+
44+
false
45+
end
3046
end

0 commit comments

Comments
 (0)