rocketjob_mission_control 3.0.0.rc1 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (154) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +10 -6
  3. data/app/assets/javascripts/rocket_job_mission_control/application.js +4 -3
  4. data/app/assets/javascripts/rocket_job_mission_control/base.js +12 -0
  5. data/app/assets/javascripts/rocket_job_mission_control/datatable.js +40 -0
  6. data/app/assets/javascripts/rocket_job_mission_control/dirmon_entries.js +16 -0
  7. data/app/assets/javascripts/rocket_job_mission_control/selectize.js +6 -0
  8. data/app/controllers/rocket_job_mission_control/active_workers_controller.rb +16 -5
  9. data/app/controllers/rocket_job_mission_control/application_controller.rb +2 -0
  10. data/app/controllers/rocket_job_mission_control/dirmon_entries_controller.rb +47 -67
  11. data/app/controllers/rocket_job_mission_control/jobs_controller.rb +113 -19
  12. data/app/controllers/rocket_job_mission_control/servers_controller.rb +71 -28
  13. data/app/datatables/rocket_job_mission_control/abstract_datatable.rb +3 -3
  14. data/app/datatables/rocket_job_mission_control/active_workers_datatable.rb +8 -14
  15. data/app/datatables/rocket_job_mission_control/dirmon_entries_datatable.rb +7 -15
  16. data/app/datatables/rocket_job_mission_control/jobs_datatable.rb +128 -13
  17. data/app/datatables/rocket_job_mission_control/servers_datatable.rb +13 -15
  18. data/app/helpers/rocket_job_mission_control/application_helper.rb +58 -0
  19. data/app/helpers/rocket_job_mission_control/jobs_helper.rb +15 -7
  20. data/app/helpers/rocket_job_mission_control/servers_helper.rb +1 -1
  21. data/app/models/rocket_job_mission_control/job_sanitizer.rb +47 -0
  22. data/app/models/rocket_job_mission_control/query.rb +24 -18
  23. data/app/views/layouts/rocket_job_mission_control/application.html.erb +43 -0
  24. data/app/views/layouts/rocket_job_mission_control/partials/_flash.html.erb +20 -0
  25. data/app/views/layouts/rocket_job_mission_control/partials/_header.html.erb +45 -0
  26. data/app/views/layouts/rocket_job_mission_control/partials/_sidebar.html.erb +12 -0
  27. data/app/views/rocket_job_mission_control/active_workers/index.html.erb +40 -0
  28. data/app/views/rocket_job_mission_control/dirmon_entries/_form.html.erb +60 -0
  29. data/app/views/rocket_job_mission_control/dirmon_entries/_sidebar.html.erb +38 -0
  30. data/app/views/rocket_job_mission_control/dirmon_entries/_status.html.erb +17 -0
  31. data/app/views/rocket_job_mission_control/dirmon_entries/edit.html.erb +4 -0
  32. data/app/views/rocket_job_mission_control/dirmon_entries/index.html.erb +33 -0
  33. data/app/views/rocket_job_mission_control/dirmon_entries/new.html.erb +8 -0
  34. data/app/views/rocket_job_mission_control/dirmon_entries/show.html.erb +29 -0
  35. data/app/views/rocket_job_mission_control/jobs/_pagination.html.erb +26 -0
  36. data/app/views/rocket_job_mission_control/jobs/_sidebar.html.erb +32 -0
  37. data/app/views/rocket_job_mission_control/jobs/_status.html.erb +42 -0
  38. data/app/views/rocket_job_mission_control/jobs/edit.html.erb +32 -0
  39. data/app/views/rocket_job_mission_control/jobs/exception.html.erb +19 -0
  40. data/app/views/rocket_job_mission_control/jobs/exceptions.html.erb +40 -0
  41. data/app/views/rocket_job_mission_control/jobs/index.html.erb +33 -0
  42. data/app/views/rocket_job_mission_control/jobs/show.html.erb +68 -0
  43. data/app/views/rocket_job_mission_control/servers/_sidebar.html.erb +31 -0
  44. data/app/views/rocket_job_mission_control/servers/index.html.erb +56 -0
  45. data/config/locales/en.yml +3 -10
  46. data/config/routes.rb +20 -17
  47. data/lib/rocket_job_mission_control/engine.rb +10 -0
  48. data/lib/rocket_job_mission_control/version.rb +1 -1
  49. data/test/compare_hashes.rb +17 -0
  50. data/test/controllers/rocket_job_mission_control/application_controller_test.rb +49 -0
  51. data/test/controllers/rocket_job_mission_control/dirmon_entries_controller_test.rb +417 -0
  52. data/test/controllers/rocket_job_mission_control/jobs_controller_test.rb +363 -0
  53. data/test/controllers/rocket_job_mission_control/servers_controller_test.rb +251 -0
  54. data/test/helpers/rocket_job_mission_control/application_helper_test.rb +54 -0
  55. data/test/helpers/rocket_job_mission_control/jobs_helper_test.rb +85 -0
  56. data/test/helpers/rocket_job_mission_control/pagination_helper_test.rb +23 -0
  57. data/test/helpers/rocket_job_mission_control/servers_helper_test.rb +64 -0
  58. data/test/helpers/rocket_job_mission_control/slices_helper_test.rb +30 -0
  59. data/test/models/rocket_job_mission_control/job_sanitizer_test.rb +92 -0
  60. data/test/models/rocket_job_mission_control/query_test.rb +136 -0
  61. data/test/test_helper.rb +23 -0
  62. metadata +75 -175
  63. data/app/assets/javascripts/rocket_job_mission_control/base.js.coffee +0 -11
  64. data/app/assets/javascripts/rocket_job_mission_control/datatable.js.coffee +0 -33
  65. data/app/assets/javascripts/rocket_job_mission_control/dirmon_entries.js.coffee +0 -13
  66. data/app/assets/javascripts/rocket_job_mission_control/selectize.js.coffee +0 -5
  67. data/app/assets/stylesheets/rocket_job_mission_control/jquery.bootstrap-touchspin.scss +0 -45
  68. data/app/controllers/rocket_job_mission_control/dirmon_entries/index_filters_controller.rb +0 -45
  69. data/app/controllers/rocket_job_mission_control/jobs/failures_controller.rb +0 -30
  70. data/app/controllers/rocket_job_mission_control/jobs/index_filters_controller.rb +0 -90
  71. data/app/controllers/rocket_job_mission_control/servers/index_filters_controller.rb +0 -49
  72. data/app/datatables/rocket_job_mission_control/completed_jobs_datatable.rb +0 -27
  73. data/app/datatables/rocket_job_mission_control/interrupted_jobs_datatable.rb +0 -26
  74. data/app/datatables/rocket_job_mission_control/queued_jobs_datatable.rb +0 -23
  75. data/app/datatables/rocket_job_mission_control/running_jobs_datatable.rb +0 -47
  76. data/app/datatables/rocket_job_mission_control/scheduled_jobs_datatable.rb +0 -31
  77. data/app/models/job_failures.rb +0 -20
  78. data/app/models/job_sanitizer.rb +0 -17
  79. data/app/views/layouts/rocket_job_mission_control/application.html.haml +0 -45
  80. data/app/views/layouts/rocket_job_mission_control/partials/_header.html.haml +0 -32
  81. data/app/views/layouts/rocket_job_mission_control/partials/_sidebar.html.haml +0 -11
  82. data/app/views/rocket_job_mission_control/active_workers/index.html.haml +0 -24
  83. data/app/views/rocket_job_mission_control/dirmon_entries/_form.html.haml +0 -37
  84. data/app/views/rocket_job_mission_control/dirmon_entries/_properties.html.haml +0 -30
  85. data/app/views/rocket_job_mission_control/dirmon_entries/_sidebar.html.haml +0 -27
  86. data/app/views/rocket_job_mission_control/dirmon_entries/_status.html.haml +0 -23
  87. data/app/views/rocket_job_mission_control/dirmon_entries/edit.html.haml +0 -4
  88. data/app/views/rocket_job_mission_control/dirmon_entries/index.html.haml +0 -18
  89. data/app/views/rocket_job_mission_control/dirmon_entries/index_filters/disabled.html.haml +0 -17
  90. data/app/views/rocket_job_mission_control/dirmon_entries/index_filters/enabled.html.haml +0 -17
  91. data/app/views/rocket_job_mission_control/dirmon_entries/index_filters/failed.html.haml +0 -17
  92. data/app/views/rocket_job_mission_control/dirmon_entries/index_filters/pending.html.haml +0 -17
  93. data/app/views/rocket_job_mission_control/dirmon_entries/new.html.haml +0 -6
  94. data/app/views/rocket_job_mission_control/dirmon_entries/show.html.haml +0 -23
  95. data/app/views/rocket_job_mission_control/jobs/_sidebar.html.haml +0 -28
  96. data/app/views/rocket_job_mission_control/jobs/_status.html.haml +0 -45
  97. data/app/views/rocket_job_mission_control/jobs/edit.html.haml +0 -34
  98. data/app/views/rocket_job_mission_control/jobs/exceptions.html.haml +0 -29
  99. data/app/views/rocket_job_mission_control/jobs/failures/_pagination.html.haml +0 -16
  100. data/app/views/rocket_job_mission_control/jobs/failures/index.html.haml +0 -32
  101. data/app/views/rocket_job_mission_control/jobs/index.html.haml +0 -25
  102. data/app/views/rocket_job_mission_control/jobs/index_filters/aborted.html.haml +0 -23
  103. data/app/views/rocket_job_mission_control/jobs/index_filters/completed.html.haml +0 -24
  104. data/app/views/rocket_job_mission_control/jobs/index_filters/failed.html.haml +0 -23
  105. data/app/views/rocket_job_mission_control/jobs/index_filters/paused.html.haml +0 -23
  106. data/app/views/rocket_job_mission_control/jobs/index_filters/queued.html.haml +0 -24
  107. data/app/views/rocket_job_mission_control/jobs/index_filters/running.html.haml +0 -25
  108. data/app/views/rocket_job_mission_control/jobs/index_filters/scheduled.html.haml +0 -24
  109. data/app/views/rocket_job_mission_control/jobs/show.html.haml +0 -51
  110. data/app/views/rocket_job_mission_control/servers/_actions.html.haml +0 -9
  111. data/app/views/rocket_job_mission_control/servers/_sidebar.html.haml +0 -20
  112. data/app/views/rocket_job_mission_control/servers/index.html.haml +0 -37
  113. data/app/views/rocket_job_mission_control/servers/index_filters/paused.html.haml +0 -37
  114. data/app/views/rocket_job_mission_control/servers/index_filters/running.html.haml +0 -37
  115. data/app/views/rocket_job_mission_control/servers/index_filters/starting.html.haml +0 -37
  116. data/app/views/rocket_job_mission_control/servers/index_filters/stopping.html.haml +0 -37
  117. data/spec/controllers/application_controller_spec.rb +0 -47
  118. data/spec/controllers/dirmon_entries/index_filters_controller_spec.rb +0 -77
  119. data/spec/controllers/dirmon_entries_controller_spec.rb +0 -383
  120. data/spec/controllers/jobs/failures_controller_spec.rb +0 -82
  121. data/spec/controllers/jobs/index_filters_controller_spec.rb +0 -66
  122. data/spec/controllers/jobs_controller_spec.rb +0 -172
  123. data/spec/controllers/workers/index_filters_controller_spec.rb +0 -59
  124. data/spec/controllers/workers_controller_spec.rb +0 -125
  125. data/spec/dummy/Rakefile +0 -7
  126. data/spec/dummy/config.ru +0 -4
  127. data/spec/dummy/config/application.rb +0 -26
  128. data/spec/dummy/config/boot.rb +0 -5
  129. data/spec/dummy/config/database.yml +0 -25
  130. data/spec/dummy/config/environment.rb +0 -5
  131. data/spec/dummy/config/environments/test.rb +0 -37
  132. data/spec/dummy/config/initializers/secret_token.rb +0 -7
  133. data/spec/dummy/config/initializers/session_store.rb +0 -3
  134. data/spec/dummy/config/initializers/wrap_parameters.rb +0 -14
  135. data/spec/dummy/config/mongoid.yml +0 -88
  136. data/spec/dummy/config/routes.rb +0 -3
  137. data/spec/dummy/config/secrets.yml +0 -22
  138. data/spec/dummy/config/symmetric-encryption.yml +0 -8
  139. data/spec/dummy/db/test.sqlite3 +0 -0
  140. data/spec/dummy/log/development.log +0 -0
  141. data/spec/dummy/log/test.log +0 -118933
  142. data/spec/helpers/application_helper_spec.rb +0 -58
  143. data/spec/helpers/jobs_helper_spec.rb +0 -35
  144. data/spec/helpers/pagination_helper_spec.rb +0 -21
  145. data/spec/helpers/servers_helper_spec.rb +0 -16
  146. data/spec/helpers/slices_helper_spec.rb +0 -33
  147. data/spec/models/job_failures_spec.rb +0 -14
  148. data/spec/models/job_sanitizer_spec.rb +0 -16
  149. data/spec/rails_helper.rb +0 -47
  150. data/spec/spec_helper.rb +0 -84
  151. data/vendor/assets/javascripts/jquery.bootstrap-touchspin.js +0 -686
  152. data/vendor/assets/javascripts/prism.js +0 -6
  153. data/vendor/assets/stylesheets/jquery.bootstrap-touchspin.css +0 -45
  154. data/vendor/assets/stylesheets/prism.scss +0 -160
@@ -1,34 +0,0 @@
1
- .container-fluid
2
- .lead= "Edit #{@job._type}"
3
-
4
- - if @job.errors.present?
5
- .alert.alert-alert
6
- Invalid Job!
7
- - @job.errors.messages.each_pair do |field, message|
8
- .message
9
- = "#{field.to_s.humanize} is not valid."
10
-
11
- = form_for(@job, as: :job, url: job_path(@job)) do |f|
12
- .row
13
- .col-md-8
14
- = f.label :description
15
- = f.text_area :description, value: @job.description, class: 'form-control description-block'
16
- .col-md-4
17
- = f.label :priority
18
- = f.number_field :priority, value: @job.priority, class: 'form-control'
19
- .col-md-4
20
- = f.label :log_level
21
- = f.select :log_level, SemanticLogger::LEVELS.collect(&:to_s), { include_blank: true }, { class: 'form-control' }
22
- - if @job.respond_to?(:max_active_workers)
23
- .col-md-4
24
- = f.label :max_active_workers
25
- = f.number_field :max_active_workers, value: @job.max_active_workers, min: 0, class: 'form-control'
26
- - if @job.respond_to?(:cron_schedule)
27
- .col-md-4
28
- = f.label :cron_schedule
29
- = f.text_field :cron_schedule, value: @job.cron_schedule, class: 'form-control'
30
- .row
31
- .col-md-12
32
- .buttons
33
- = f.submit 'Update', class: 'btn btn-primary'
34
- = link_to 'Cancel', :back, class: 'btn btn-default'
@@ -1,29 +0,0 @@
1
- .job-list
2
- .list
3
- .row
4
- .col-sm-10
5
- %h2 Exceptions
6
- = link_to(@job.class.name, job_path(@job))
7
- = h(@job.description)
8
- .col-sm-2
9
- .btn.btn-default.pull-right.dt-reload{ data: { behavior: 'reload' } }
10
- %i.fa.fa-refresh
11
- %table.table.datatable.jobs-datatable{ style: 'width: 100%', data: { source: "#{jobs_url(format: 'json')}" } }
12
- %thead
13
- %tr
14
- %th Count
15
- %th Exception Class
16
- %th Exception Messages
17
- %tbody
18
- - class_name = nil
19
- - @exceptions.each do |exception|
20
- - exception.messages.each do |message|
21
- %tr
22
- %th
23
- = exception.count if exception.class_name != class_name
24
- %th
25
- - if exception.class_name != class_name
26
- = link_to(exception.class_name, job_failures_path(@job, error_type: exception.class_name), class: "card callout")
27
- %th
28
- = message
29
- - class_name = exception.class_name
@@ -1,16 +0,0 @@
1
- - previous_offset = [0, pagination[:offset].pred].max
2
- - next_offset = [pagination[:total], pagination[:offset].next].min
3
-
4
- %ul.pagination
5
- %li
6
- = link_to(job_failures_path(error_type: error_type, offset: 0), class: "btn btn-default #{page_nav_disabled_class(pagination[:offset], 0)}", title: 'First') do
7
- %i.fa.fa-angle-double-left
8
- %li
9
- = link_to(job_failures_path(error_type: error_type, offset: previous_offset), class: "btn btn-default #{page_nav_disabled_class(pagination[:offset], 0)}", title: 'Previous') do
10
- %i.fa.fa-angle-left
11
- %li
12
- = link_to(job_failures_path(error_type: error_type, offset: next_offset), class: "btn btn-default #{page_nav_disabled_class(pagination[:offset], pagination[:total])}", title: 'Next') do
13
- %i.fa.fa-angle-right
14
- %li
15
- = link_to(job_failures_path(error_type: error_type, offset: pagination[:total]), class: "btn btn-default #{page_nav_disabled_class(pagination[:offset], pagination[:total])}", title: 'Last') do
16
- %i.fa.fa-angle-double-right
@@ -1,32 +0,0 @@
1
- .row
2
- .col-md-4
3
- .job-list
4
- .list-top
5
- %ol.breadcrumb
6
- %li= link_to(@job.class.name, job_path(@job))
7
- %li.active Failures
8
- .clearfix
9
- .list
10
- - @slice_errors.each do |slice_error|
11
- = link_to(job_failures_path(@job, error_type: slice_error.class_name), class: "card callout") do
12
- .inner
13
- .title
14
- .lead
15
- = slice_error.class_name
16
-
17
- .description
18
- = "Occurrences: #{slice_error.count}"
19
-
20
- - if @failure_exception
21
- .col-md-8
22
- .job-status
23
- .failures
24
- .lead= @failure_exception.class_name
25
- .pagination-buttons.pull-right= render partial: 'pagination', locals: { error_type: @failure_exception.class_name, pagination: @pagination }
26
-
27
- .clearfix
28
- .message
29
- %pre
30
- %code= @failure_exception.message
31
- .error
32
- %pre.small= @failure_exception.backtrace.join("\n")
@@ -1,25 +0,0 @@
1
- .job-list
2
- .list
3
- .row
4
- .col-sm-10
5
- %h2 Jobs
6
- .col-sm-2
7
- .btn.btn-default.pull-right.dt-reload{ data: { behavior: 'reload' } }
8
- %i.fa.fa-refresh
9
- %table.table.datatable.jobs-datatable{ style: "width: 100%", data: { source: "#{jobs_url(format: 'json')}" } }
10
- %thead
11
- %tr
12
- %th Class
13
- %th Description
14
- %th Created
15
- %th Duration
16
- %th Actions
17
- %tbody
18
-
19
- :javascript
20
- jQuery(function() {
21
- new RjmcDatatable(
22
- $(".jobs-datatable"),
23
- [{data: '0'}, {data: '1'}, {data: '2'}, {data: '3', orderable: false}, {data: '4', orderable: false}]
24
- );
25
- });
@@ -1,23 +0,0 @@
1
- .job-list
2
- .list
3
- .row
4
- .col-sm-10
5
- %h2 Aborted Jobs
6
- .col-sm-2
7
- .btn.btn-default.pull-right.dt-reload{ data: { behavior: 'reload' } }
8
- %i.fa.fa-refresh
9
- %table.table.datatable.jobs-datatable{ style: "width: 100%", data: { source: "#{aborted_jobs_url(format: 'json')}" } }
10
- %thead
11
- %tr
12
- %th Class
13
- %th Description
14
- %th Aborted
15
- %th Actions
16
- %tbody
17
-
18
- :javascript
19
- jQuery(function() {
20
- new RjmcDatatable(
21
- $(".jobs-datatable"),
22
- [{data: '0', width: '30%'}, {data: '1', width: '30%'}, {data: '2'}, {data: '3', orderable: false}]);
23
- });
@@ -1,24 +0,0 @@
1
- .job-list
2
- .list
3
- .row
4
- .col-sm-10
5
- %h2 Completed Jobs
6
- .col-sm-2
7
- .btn.btn-default.pull-right.dt-reload{ data: { behavior: 'reload' } }
8
- %i.fa.fa-refresh
9
- %table.table.datatable.jobs-datatable{ style: "width: 100%", data: { source: "#{completed_jobs_url(format: 'json')}" } }
10
- %thead
11
- %tr
12
- %th Class
13
- %th Description
14
- %th Duration
15
- %th Completed
16
- %th Actions
17
- %tbody
18
-
19
- :javascript
20
- jQuery(function() {
21
- new RjmcDatatable(
22
- $(".jobs-datatable"),
23
- [{data: '0'}, {data: '1'}, {data: '2', orderable: false}, {data: '3'}, {data: '4', orderable: false}]);
24
- });
@@ -1,23 +0,0 @@
1
- .job-list
2
- .list
3
- .row
4
- .col-sm-10
5
- %h2 Failed Jobs
6
- .col-sm-2
7
- .btn.btn-default.pull-right.dt-reload{ data: { behavior: 'reload' } }
8
- %i.fa.fa-refresh
9
- %table.table.datatable.jobs-datatable{ style: "width: 100%", data: { source: "#{failed_jobs_url(format: 'json')}" } }
10
- %thead
11
- %tr
12
- %th Class
13
- %th Description
14
- %th Failed
15
- %th Actions
16
- %tbody
17
-
18
- :javascript
19
- jQuery(function() {
20
- new RjmcDatatable(
21
- $(".jobs-datatable"),
22
- [{data: '0', width: '30%'}, {data: '1', width: '30%'}, {data: '2'}, {data: '3', orderable: false}]);
23
- });
@@ -1,23 +0,0 @@
1
- .job-list
2
- .list
3
- .row
4
- .col-sm-10
5
- %h2 Paused Jobs
6
- .col-sm-2
7
- .btn.btn-default.pull-right.dt-reload{ data: { behavior: 'reload' } }
8
- %i.fa.fa-refresh
9
- %table.table.datatable.jobs-datatable{ style: "width: 100%", data: { source: "#{paused_jobs_url(format: 'json')}" } }
10
- %thead
11
- %tr
12
- %th Class
13
- %th Description
14
- %th Paused
15
- %th Actions
16
- %tbody
17
-
18
- :javascript
19
- jQuery(function() {
20
- new RjmcDatatable(
21
- $(".jobs-datatable"),
22
- [{data: '0', width: '30%'}, {data: '1', width: '30%'}, {data: '2'}, {data: '3', orderable: false}]);
23
- });
@@ -1,24 +0,0 @@
1
- .job-list
2
- .list
3
- .row
4
- .col-sm-10
5
- %h2 Queued Jobs
6
- .col-sm-2
7
- .btn.btn-default.pull-right.dt-reload{ data: { behavior: 'reload' } }
8
- %i.fa.fa-refresh
9
- %table.table.datatable.jobs-datatable{ style: "width: 100%", data: { source: "#{queued_jobs_url(format: 'json')}" } }
10
- %thead
11
- %tr
12
- %th Class
13
- %th Description
14
- %th Priority
15
- %th Queued For
16
- %th Actions
17
- %tbody
18
-
19
- :javascript
20
- jQuery(function() {
21
- new RjmcDatatable(
22
- $(".jobs-datatable"),
23
- [{data: '0'}, {data: '1'}, {data: '2'}, {data: '3', orderable: false}, {data: '4', orderable: false}]);
24
- });
@@ -1,25 +0,0 @@
1
- .job-list
2
- .list
3
- .row
4
- .col-sm-10
5
- %h2 Running Jobs
6
- .col-sm-2
7
- .btn.btn-default.pull-right.dt-reload{ data: { behavior: 'reload' } }
8
- %i.fa.fa-refresh
9
- %table.table.datatable.jobs-datatable{ style: "width: 100%", data: { source: "#{running_jobs_url(format: 'json')}" } }
10
- %thead
11
- %tr
12
- %th Class
13
- %th Description
14
- %th Progress
15
- %th Priority
16
- %th Started
17
- %th Actions
18
- %tbody
19
-
20
- :javascript
21
- jQuery(function() {
22
- new RjmcDatatable(
23
- $(".jobs-datatable"),
24
- [{data: '0'}, {data: '1'}, {data: '2', orderable: false}, {data: '3'}, {data: '4'}, {data: '5', orderable: false}]);
25
- });
@@ -1,24 +0,0 @@
1
- .job-list
2
- .list
3
- .row
4
- .col-sm-10
5
- %h2 Scheduled Jobs
6
- .col-sm-2
7
- .btn.btn-default.pull-right.dt-reload{ data: { behavior: 'reload' } }
8
- %i.fa.fa-refresh
9
- %table.table.datatable.jobs-datatable{ style: "width: 100%", data: { source: "#{scheduled_jobs_url(format: 'json')}" } }
10
- %thead
11
- %tr
12
- %th Class
13
- %th Description
14
- %th Runs in
15
- %th Cron Schedule
16
- %th Actions
17
- %tbody
18
-
19
- :javascript
20
- jQuery(function() {
21
- new RjmcDatatable(
22
- $(".jobs-datatable"),
23
- [{data: '0'}, {data: '1'}, {data: '2'}, {data: '3'}, {data: '4', orderable: false}]);
24
- });
@@ -1,51 +0,0 @@
1
- .row
2
- .col-md-14.col-md-offset-1.job-status
3
- #job
4
- .lead= @job.class.name
5
-
6
- .job-state.inline-block
7
- .left State
8
- .right{ class: @job.state.to_s }
9
- = @job.state
10
- - if sub_state = @job['sub_state']
11
- .job-state.inline-block
12
- .left Batch
13
- .right{ class: 'running' }
14
- = sub_state
15
-
16
- .btn-toolbar.job-actions.pull-right
17
- - if @job.respond_to?(:input) && @job.input.failed.count > 0
18
- .btn-group
19
- = link_to('Show Exceptions', exceptions_job_path(@job), class: 'btn btn-default')
20
-
21
- - if @job.scheduled?
22
- .btn-group
23
- = job_action_link('Run', rocket_job_mission_control.run_now_job_path(@job), :patch)
24
-
25
- .btn-group
26
- - valid_events = @job.aasm.events.collect{ |e| e.name }
27
-
28
- - if valid_events.include?(:pause)
29
- = job_action_link('Pause', rocket_job_mission_control.pause_job_path(@job), :patch)
30
-
31
- - if valid_events.include?(:resume)
32
- = job_action_link('Resume', rocket_job_mission_control.resume_job_path(@job), :patch)
33
-
34
- - if valid_events.include?(:retry)
35
- = job_action_link('Retry', rocket_job_mission_control.retry_job_path(@job), :patch)
36
-
37
- .btn-group
38
- - if valid_events.include?(:fail)
39
- = job_action_link('Fail', rocket_job_mission_control.fail_job_path(@job), :patch)
40
-
41
- - if valid_events.include?(:abort)
42
- = job_action_link('Abort', rocket_job_mission_control.abort_job_path(@job), :patch)
43
-
44
- = job_action_link('Destroy', rocket_job_mission_control.job_path(@job), :delete)
45
-
46
- - unless @job.completed? || @job.aborted?
47
- .btn-group
48
- = link_to "Edit", edit_job_path(@job), class: "btn btn-default"
49
-
50
- .col-md-12
51
- = render partial: 'status', locals: { job: @job }
@@ -1,9 +0,0 @@
1
- - if server.stopping?
2
- %p Server is stopping...
3
- = link_to "destroy", rocket_job_mission_control.server_path(server), method: :delete, class: 'btn btn-danger'
4
- -else
5
- = link_to "stop", rocket_job_mission_control.stop_server_path(server), method: :patch, class: 'btn btn-danger'
6
- - if server.paused?
7
- = link_to "resume", rocket_job_mission_control.resume_server_path(server), method: :patch, class: 'btn btn-default'
8
- - else
9
- = link_to "pause", rocket_job_mission_control.pause_server_path(server), method: :patch, class: 'btn btn-default'
@@ -1,20 +0,0 @@
1
- %ul#lg-menu.nav.hidden-xs
2
- %li
3
- = link_to(servers_path) do
4
- %i.fa.fa-list
5
- All
6
- - RocketJob::Server.aasm.states.map { |s| s.name.to_s }.each do |state|
7
- %li{class: state}
8
- = link_to("#{state}_servers".to_sym) do
9
- %i.fa{class: state_icon(state)}
10
- = state.to_s.capitalize!
11
- = "(#{server_counts_by_state(state)})"
12
- / tiny only nav
13
- %ul#xs-menu.nav.visible-xs
14
- %li
15
- = link_to(servers_path) do
16
- %i.fa.fa-list
17
- - RocketJob::Server.aasm.states.map { |s| s.name.to_s }.each do |state|
18
- %li{class: state}
19
- = link_to("#{state}_servers".to_sym) do
20
- %i.fa{class: state_icon(state)}
@@ -1,37 +0,0 @@
1
- #servers
2
- .server-list
3
- .list
4
- .row
5
- .col-md-6
6
- %h2 Servers
7
- .col-md-6
8
- .col-sm-10
9
- .server-collection-actions
10
- - if @servers.present?
11
- %ol
12
- .btn-group
13
- - [:stop_all, :pause_all, :resume_all, :destroy_zombies].each do |action|
14
- = link_to("#{action.to_s.humanize.capitalize}",
15
- rocket_job_mission_control.update_all_servers_path(server_action: action),
16
- method: :patch,
17
- data: { confirm: t(:confirm, scope: [:server, :update_all], action: action.to_s.singularize.humanize.downcase) },
18
- class: 'btn btn-default')
19
- .col-sm-2.pull-right
20
- .btn.btn-default.pull-right.dt-reload{ data: { behavior: 'reload' } }
21
- %i.fa.fa-refresh
22
- %table.table.datatable.servers-datatable{ style: "width: 100%", data: { source: "#{servers_url(format: 'json')}" } }
23
- %thead
24
- %tr
25
- %th Hostname : PID
26
- %th Workers (Current/Max)
27
- %th Started
28
- %th Heartbeat
29
- %th Actions
30
- %tbody
31
-
32
- :javascript
33
- jQuery(function() {
34
- new RjmcDatatable(
35
- $('.servers-datatable'),
36
- [{data: '0'}, {data: '1'}, {data: '2'}, {data: '3'}, {data: '4', orderable: false}]);
37
- });
@@ -1,37 +0,0 @@
1
- #servers
2
- .server-list
3
- .list
4
- .row
5
- .col-md-6
6
- %h2 Paused Servers
7
- .col-md-6
8
- .col-sm-10
9
- .server-collection-actions
10
- - if @servers.present?
11
- %ol.pull-right
12
- .btn-group
13
- - [:stop_all, :resume_all, :destroy_zombies].each do |action|
14
- = link_to("#{action.to_s.humanize.capitalize}",
15
- rocket_job_mission_control.update_all_servers_path(server_action: action),
16
- method: :patch,
17
- data: { confirm: t(:confirm, scope: [:server, :update_all], action: action.to_s.singularize.humanize.downcase) },
18
- class: 'btn btn-default')
19
- .col-sm-2.pull-right
20
- .btn.btn-default.pull-right.dt-reload{ data: { behavior: 'reload' } }
21
- %i.fa.fa-refresh
22
- %table.table.datatable.servers-datatable{ style: "width: 100%", data: { source: "#{paused_servers_url(format: 'json')}" } }
23
- %thead
24
- %tr
25
- %th Hostname : PID
26
- %th Workers (Current/Max)
27
- %th Started
28
- %th Heartbeat
29
- %th Actions
30
- %tbody
31
-
32
- :javascript
33
- jQuery(function() {
34
- new RjmcDatatable(
35
- $('.servers-datatable'),
36
- [{data: '0'}, {data: '1', orderable: false}, {data: '2'}, {data: '3'}, {data: '4', orderable: false}]);
37
- });