Skip to content

Commit 927ae8c

Browse files
committed
Addresses PR feedback
* Moves defaults handling from MissionControl::Jobs::Application to MissionControl::Jobs::Server to minimize impact of this new feature on the existing implementation and tests. This fixes the unit test failure that I missed in the previous commit. * Uses @server rather than looking it up via params in the JobsController. This allows reverting all changes to the JobsController.
1 parent 5e7ed27 commit 927ae8c

File tree

5 files changed

+7
-17
lines changed

5 files changed

+7
-17
lines changed

app/controllers/mission_control/jobs/jobs_controller.rb

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ class MissionControl::Jobs::JobsController < MissionControl::Jobs::ApplicationCo
22
include MissionControl::Jobs::JobScoped, MissionControl::Jobs::JobFilters
33

44
skip_before_action :set_job, only: :index
5-
before_action :set_backtrace_cleaner, only: :show
65

76
def index
87
@job_class_names = jobs_with_status.job_class_names
@@ -38,12 +37,4 @@ def filtered_jobs
3837
def jobs_status
3938
params[:status].presence&.inquiry
4039
end
41-
42-
def set_backtrace_cleaner
43-
@backtrace_cleaner = @application.servers[server_id]&.backtrace_cleaner
44-
end
45-
46-
def server_id
47-
params[:server_id]
48-
end
4940
end

app/helpers/mission_control/jobs/jobs_helper.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ def clean_backtrace?
1515
params["clean_backtrace"] == "true"
1616
end
1717

18-
def failed_job_backtrace(job)
19-
if clean_backtrace? && @backtrace_cleaner
20-
@backtrace_cleaner.clean(job.last_execution_error.backtrace).join("\n")
18+
def failed_job_backtrace(job, server)
19+
if clean_backtrace? && server&.backtrace_cleaner
20+
server.backtrace_cleaner.clean(job.last_execution_error.backtrace).join("\n")
2121
else
2222
job.last_execution_error.backtrace.join("\n")
2323
end

app/views/mission_control/jobs/jobs/_error_information.html.erb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@
1414
</tbody>
1515
</table>
1616

17-
<% if @backtrace_cleaner %>
17+
<% if @server.backtrace_cleaner %>
1818
<%= render "mission_control/jobs/jobs/failed/backtrace_toggle", application: @application, job: job %>
1919
<% end %>
2020

21-
<pre class="is-family-monospace mb-4 backtrace-content"><%= failed_job_backtrace(job) %></pre>
21+
<pre class="is-family-monospace mb-4 backtrace-content"><%= failed_job_backtrace(job, @server) %></pre>
2222
<% end %>

lib/mission_control/jobs/application.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ def initialize(name:)
1212
def add_servers(queue_adapters_by_name)
1313
queue_adapters_by_name.each do |name, queue_adapter|
1414
adapter, cleaner = queue_adapter
15-
cleaner ||= MissionControl::Jobs.backtrace_cleaner
1615

1716
servers << MissionControl::Jobs::Server.new(name: name.to_s, queue_adapter: adapter,
1817
backtrace_cleaner: cleaner, application: self)

lib/mission_control/jobs/server.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@ class MissionControl::Jobs::Server
66

77
attr_reader :name, :queue_adapter, :application, :backtrace_cleaner
88

9-
def initialize(name:, queue_adapter:, application:, backtrace_cleaner:)
9+
def initialize(name:, queue_adapter:, application:, backtrace_cleaner: nil)
1010
super(name: name)
1111
@queue_adapter = queue_adapter
1212
@application = application
13-
@backtrace_cleaner = backtrace_cleaner
13+
@backtrace_cleaner = backtrace_cleaner || MissionControl::Jobs.backtrace_cleaner
1414
end
1515

1616
def activating(&block)

0 commit comments

Comments
 (0)