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.
Files changed (32) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +73 -0
  3. data/README.md +39 -16
  4. data/engine/app/controllers/good_job/base_controller.rb +8 -0
  5. data/engine/app/controllers/good_job/cron_schedules_controller.rb +1 -2
  6. data/engine/app/controllers/good_job/executions_controller.rb +5 -1
  7. data/engine/app/controllers/good_job/{active_jobs_controller.rb → jobs_controller.rb} +6 -2
  8. data/engine/app/filters/good_job/base_filter.rb +101 -0
  9. data/engine/app/filters/good_job/executions_filter.rb +40 -0
  10. data/engine/app/filters/good_job/jobs_filter.rb +46 -0
  11. data/engine/app/helpers/good_job/application_helper.rb +4 -0
  12. data/engine/app/models/good_job/active_job_job.rb +127 -0
  13. data/engine/app/views/good_job/cron_schedules/index.html.erb +51 -7
  14. data/engine/app/views/good_job/executions/index.html.erb +21 -0
  15. data/engine/app/views/good_job/jobs/index.html.erb +7 -0
  16. data/engine/app/views/good_job/{active_jobs → jobs}/show.html.erb +0 -0
  17. data/engine/app/views/good_job/shared/_executions_table.erb +3 -3
  18. data/engine/app/views/good_job/shared/_filter.erb +52 -0
  19. data/engine/app/views/good_job/shared/_jobs_table.erb +56 -0
  20. data/engine/app/views/layouts/good_job/base.html.erb +5 -1
  21. data/engine/config/routes.rb +2 -2
  22. data/lib/good_job/adapter.rb +6 -4
  23. data/lib/good_job/cli.rb +3 -1
  24. data/lib/good_job/configuration.rb +4 -0
  25. data/lib/good_job/cron_entry.rb +65 -0
  26. data/lib/good_job/cron_manager.rb +18 -30
  27. data/lib/good_job/log_subscriber.rb +3 -3
  28. data/lib/good_job/scheduler.rb +2 -1
  29. data/lib/good_job/version.rb +1 -1
  30. metadata +13 -6
  31. data/engine/app/controllers/good_job/dashboards_controller.rb +0 -107
  32. 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">&raquo;</span>
48
- <% end %>
49
- </li>
50
- </ul>
51
- </nav>
52
- <% else %>
53
- <em>No executions present.</em>
54
- <% end %>