good_job 2.2.0 → 2.4.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +73 -0
- data/README.md +39 -16
- data/engine/app/controllers/good_job/base_controller.rb +8 -0
- data/engine/app/controllers/good_job/cron_schedules_controller.rb +1 -2
- data/engine/app/controllers/good_job/executions_controller.rb +5 -1
- data/engine/app/controllers/good_job/{active_jobs_controller.rb → jobs_controller.rb} +6 -2
- data/engine/app/filters/good_job/base_filter.rb +101 -0
- data/engine/app/filters/good_job/executions_filter.rb +40 -0
- data/engine/app/filters/good_job/jobs_filter.rb +46 -0
- data/engine/app/helpers/good_job/application_helper.rb +4 -0
- data/engine/app/models/good_job/active_job_job.rb +127 -0
- data/engine/app/views/good_job/cron_schedules/index.html.erb +51 -7
- data/engine/app/views/good_job/executions/index.html.erb +21 -0
- data/engine/app/views/good_job/jobs/index.html.erb +7 -0
- data/engine/app/views/good_job/{active_jobs → jobs}/show.html.erb +0 -0
- data/engine/app/views/good_job/shared/_executions_table.erb +3 -3
- data/engine/app/views/good_job/shared/_filter.erb +52 -0
- data/engine/app/views/good_job/shared/_jobs_table.erb +56 -0
- data/engine/app/views/layouts/good_job/base.html.erb +5 -1
- data/engine/config/routes.rb +2 -2
- data/lib/good_job/adapter.rb +6 -4
- data/lib/good_job/cli.rb +3 -1
- data/lib/good_job/configuration.rb +4 -0
- data/lib/good_job/cron_entry.rb +65 -0
- data/lib/good_job/cron_manager.rb +18 -30
- data/lib/good_job/log_subscriber.rb +3 -3
- data/lib/good_job/scheduler.rb +2 -1
- data/lib/good_job/version.rb +1 -1
- metadata +13 -6
- data/engine/app/controllers/good_job/dashboards_controller.rb +0 -107
- data/engine/app/views/good_job/dashboards/index.html.erb +0 -54
@@ -1,54 +0,0 @@
|
|
1
|
-
<div class="card my-3 p-6">
|
2
|
-
<%= render 'good_job/shared/chart', chart_data: @chart %>
|
3
|
-
</div>
|
4
|
-
|
5
|
-
<div class='card mb-2'>
|
6
|
-
<div class='card-body d-flex flex-wrap'>
|
7
|
-
<div class='me-4'>
|
8
|
-
<small>Filter by job class</small>
|
9
|
-
<br>
|
10
|
-
<% @filter.job_classes.each do |(name, count)| %>
|
11
|
-
<% if params[:job_class] == name %>
|
12
|
-
<%= link_to(root_path(@filter.to_params(job_class: nil)), class: 'btn btn-sm btn-outline-secondary active', role: "button", "aria-pressed": true) do %>
|
13
|
-
<%= name %> (<%= count %>)
|
14
|
-
<% end %>
|
15
|
-
<% else %>
|
16
|
-
<%= link_to(root_path(@filter.to_params(job_class: name)), class: 'btn btn-sm btn-outline-secondary', role: "button") do %>
|
17
|
-
<%= name %> (<%= count %>)
|
18
|
-
<% end %>
|
19
|
-
<% end %>
|
20
|
-
<% end %>
|
21
|
-
</div>
|
22
|
-
<div>
|
23
|
-
<small>Filter by state</small>
|
24
|
-
<br>
|
25
|
-
<% @filter.states.each do |name, count| %>
|
26
|
-
<% if params[:state] == name %>
|
27
|
-
<%= link_to(root_path(@filter.to_params(state: nil)), class: 'btn btn-sm btn-outline-secondary active', role: "button", "aria-pressed": true) do %>
|
28
|
-
<%= name %> (<%= count %>)
|
29
|
-
<% end %>
|
30
|
-
<% else %>
|
31
|
-
<%= link_to(root_path(@filter.to_params(state: name)), class: 'btn btn-sm btn-outline-secondary', role: "button") do %>
|
32
|
-
<%= name %> (<%= count %>)
|
33
|
-
<% end %>
|
34
|
-
<% end %>
|
35
|
-
<% end %>
|
36
|
-
</div>
|
37
|
-
</div>
|
38
|
-
</div>
|
39
|
-
|
40
|
-
<% if @filter.executions.present? %>
|
41
|
-
<%= render 'good_job/shared/executions_table', executions: @filter.executions %>
|
42
|
-
|
43
|
-
<nav aria-label="Job pagination" class="mt-3">
|
44
|
-
<ul class="pagination">
|
45
|
-
<li class="page-item">
|
46
|
-
<%= link_to({ after_scheduled_at: (@filter.last.scheduled_at || @filter.last.created_at), after_id: @filter.last.id }, class: "page-link") do %>
|
47
|
-
Older executions <span aria-hidden="true">»</span>
|
48
|
-
<% end %>
|
49
|
-
</li>
|
50
|
-
</ul>
|
51
|
-
</nav>
|
52
|
-
<% else %>
|
53
|
-
<em>No executions present.</em>
|
54
|
-
<% end %>
|