flightdeck 0.5.1 → 0.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/assets/flightdeck/{flightdeck-00403457c5d9.css → flightdeck-3967b9e6c506.css} +1 -1
- data/app/assets/flightdeck/{flightdeck-8fc2423da15f.js → flightdeck-3aac23f80afe.js} +2 -2
- data/app/assets/flightdeck/manifest.json +7 -7
- data/app/controllers/concerns/flightdeck/toasts.rb +23 -13
- data/app/controllers/flightdeck/jobs/actions_controller.rb +41 -42
- data/app/controllers/flightdeck/jobs/discards_controller.rb +0 -1
- data/app/controllers/flightdeck/jobs/retries_controller.rb +0 -1
- data/app/controllers/flightdeck/processes_controller.rb +8 -3
- data/app/controllers/flightdeck/queues_controller.rb +8 -3
- data/app/controllers/flightdeck/recurring_tasks_controller.rb +7 -2
- data/app/helpers/flightdeck/application_helper.rb +18 -1
- data/app/helpers/flightdeck/jobs_helper.rb +1 -20
- data/app/models/flightdeck/duration.rb +23 -0
- data/app/models/flightdeck/job_detail.rb +1 -8
- data/app/models/flightdeck/job_row.rb +10 -0
- data/app/models/flightdeck/jobs_query.rb +8 -16
- data/app/models/flightdeck/metrics/line_chart.rb +3 -7
- data/app/models/flightdeck/overview.rb +12 -19
- data/app/models/flightdeck/process_registry.rb +0 -6
- data/app/models/flightdeck/queue_stats.rb +0 -2
- data/app/models/flightdeck/recurring_catalog.rb +0 -2
- data/app/views/flightdeck/jobs/_list.html.erb +9 -4
- data/app/views/flightdeck/jobs/index.html.erb +2 -5
- data/app/views/flightdeck/overview/_tiles.html.erb +1 -1
- data/app/views/flightdeck/overview/index.html.erb +12 -37
- data/app/views/flightdeck/processes/index.html.erb +2 -6
- data/app/views/flightdeck/queues/index.html.erb +2 -6
- data/app/views/flightdeck/recurring_tasks/index.html.erb +2 -6
- data/app/views/flightdeck/shared/refresh.turbo_stream.erb +14 -0
- data/app/views/layouts/flightdeck/application.html.erb +7 -7
- data/lib/flightdeck/assets.rb +0 -6
- data/lib/flightdeck/version.rb +1 -1
- metadata +5 -7
- data/app/views/flightdeck/jobs/actions/create.turbo_stream.erb +0 -18
- data/app/views/flightdeck/processes/prune.turbo_stream.erb +0 -15
- data/app/views/flightdeck/queues/update.turbo_stream.erb +0 -15
- data/app/views/flightdeck/recurring_tasks/run.turbo_stream.erb +0 -15
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<meta charset="utf-8">
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
6
6
|
<title><%= content_for?(:title) ? yield(:title) : "Flightdeck" %></title>
|
|
7
|
-
<meta name="turbo-root" content="<%=
|
|
7
|
+
<meta name="turbo-root" content="<%= root_path %>">
|
|
8
8
|
<%= csrf_meta_tags %>
|
|
9
9
|
<% if (css = flightdeck_asset_path("flightdeck.css")) %>
|
|
10
10
|
<link rel="stylesheet" href="<%= css %>">
|
|
@@ -22,36 +22,36 @@
|
|
|
22
22
|
</div>
|
|
23
23
|
|
|
24
24
|
<nav class="fd-nav">
|
|
25
|
-
<%= link_to
|
|
25
|
+
<%= link_to root_path, class: "fd-nav-link#{" on" if current_page?(root_path)}" do %>
|
|
26
26
|
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" stroke="currentColor" stroke-width="1.4"><path d="M1.5 13.5v-5h3v5m1.5 0v-9h3v9m1.5 0v-12h3v12" stroke-linejoin="round"/></svg>
|
|
27
27
|
Overview
|
|
28
28
|
<% end %>
|
|
29
29
|
|
|
30
30
|
<span class="fd-nav-section">Jobs</span>
|
|
31
31
|
|
|
32
|
-
<%= link_to
|
|
32
|
+
<%= link_to jobs_path, class: "fd-nav-link#{" on" if fd_nav_active?(:all)}" do %>
|
|
33
33
|
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" stroke="currentColor" stroke-width="1.4"><rect x="1.5" y="2.5" width="12" height="10" rx="1.5"/><path d="M4.5 6h6M4.5 9h4"/></svg>
|
|
34
34
|
All jobs <span class="fd-nav-count"><%= fd_nav_count(:all) %></span>
|
|
35
35
|
<% end %>
|
|
36
36
|
|
|
37
|
-
<%= link_to
|
|
37
|
+
<%= link_to jobs_path(state: :failed), class: "fd-nav-link#{" on" if fd_nav_active?(:failed)}" do %>
|
|
38
38
|
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" stroke="currentColor" stroke-width="1.4"><circle cx="7.5" cy="7.5" r="6"/><path d="M7.5 4.5v3.5M7.5 10.4v.2"/></svg>
|
|
39
39
|
Failed <span class="fd-nav-count"><%= fd_nav_count(:failed) %></span>
|
|
40
40
|
<% end %>
|
|
41
41
|
|
|
42
42
|
<span class="fd-nav-section">Infrastructure</span>
|
|
43
43
|
|
|
44
|
-
<%= link_to
|
|
44
|
+
<%= link_to queues_path, class: "fd-nav-link#{" on" if controller_name == "queues"}" do %>
|
|
45
45
|
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" stroke="currentColor" stroke-width="1.4"><path d="M2 4h11M2 7.5h11M2 11h7"/></svg>
|
|
46
46
|
Queues <span class="fd-nav-count"><%= fd_nav_queue_count %></span>
|
|
47
47
|
<% end %>
|
|
48
48
|
|
|
49
|
-
<%= link_to
|
|
49
|
+
<%= link_to processes_path, class: "fd-nav-link#{" on" if controller_name == "processes"}" do %>
|
|
50
50
|
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" stroke="currentColor" stroke-width="1.4"><rect x="2" y="2" width="11" height="7" rx="1.5"/><path d="M5 13h5M7.5 9v4"/></svg>
|
|
51
51
|
Processes <span class="fd-nav-count <%= "alert" if fd_nav_any_dead_processes? %>"><%= fd_nav_process_count %></span>
|
|
52
52
|
<% end %>
|
|
53
53
|
|
|
54
|
-
<%= link_to
|
|
54
|
+
<%= link_to recurring_tasks_path, class: "fd-nav-link#{" on" if controller_name == "recurring_tasks"}" do %>
|
|
55
55
|
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" stroke="currentColor" stroke-width="1.4"><circle cx="7.5" cy="7.5" r="6"/><path d="M7.5 4v3.5l2.5 1.5"/></svg>
|
|
56
56
|
Recurring <span class="fd-nav-count"><%= fd_nav_recurring_count %></span>
|
|
57
57
|
<% end %>
|
data/lib/flightdeck/assets.rb
CHANGED
|
@@ -58,12 +58,6 @@ module Flightdeck
|
|
|
58
58
|
CONTENT_TYPES.fetch(File.extname(file), "application/octet-stream")
|
|
59
59
|
end
|
|
60
60
|
|
|
61
|
-
def reload!
|
|
62
|
-
remove_instance_variable(:@manifest) if defined?(@manifest)
|
|
63
|
-
remove_instance_variable(:@by_digested_name) if defined?(@by_digested_name)
|
|
64
|
-
manifest
|
|
65
|
-
end
|
|
66
|
-
|
|
67
61
|
private
|
|
68
62
|
def load_manifest
|
|
69
63
|
path = root.join("manifest.json")
|
data/lib/flightdeck/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: flightdeck
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.5.
|
|
4
|
+
version: 0.5.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Carl Mercier
|
|
@@ -48,8 +48,8 @@ extra_rdoc_files: []
|
|
|
48
48
|
files:
|
|
49
49
|
- MIT-LICENSE
|
|
50
50
|
- README.md
|
|
51
|
-
- app/assets/flightdeck/flightdeck-
|
|
52
|
-
- app/assets/flightdeck/flightdeck-
|
|
51
|
+
- app/assets/flightdeck/flightdeck-3967b9e6c506.css
|
|
52
|
+
- app/assets/flightdeck/flightdeck-3aac23f80afe.js
|
|
53
53
|
- app/assets/flightdeck/manifest.json
|
|
54
54
|
- app/controllers/concerns/flightdeck/toasts.rb
|
|
55
55
|
- app/controllers/flightdeck/application_controller.rb
|
|
@@ -70,6 +70,7 @@ files:
|
|
|
70
70
|
- app/models/flightdeck/bulk_action.rb
|
|
71
71
|
- app/models/flightdeck/cache.rb
|
|
72
72
|
- app/models/flightdeck/cron_schedule.rb
|
|
73
|
+
- app/models/flightdeck/duration.rb
|
|
73
74
|
- app/models/flightdeck/error_summary.rb
|
|
74
75
|
- app/models/flightdeck/grouped_failures.rb
|
|
75
76
|
- app/models/flightdeck/job_detail.rb
|
|
@@ -91,7 +92,6 @@ files:
|
|
|
91
92
|
- app/views/flightdeck/jobs/_pager.html.erb
|
|
92
93
|
- app/views/flightdeck/jobs/_row.html.erb
|
|
93
94
|
- app/views/flightdeck/jobs/_state_tabs.html.erb
|
|
94
|
-
- app/views/flightdeck/jobs/actions/create.turbo_stream.erb
|
|
95
95
|
- app/views/flightdeck/jobs/index.html.erb
|
|
96
96
|
- app/views/flightdeck/jobs/show.html.erb
|
|
97
97
|
- app/views/flightdeck/metrics/_bar_chart.html.erb
|
|
@@ -108,14 +108,12 @@ files:
|
|
|
108
108
|
- app/views/flightdeck/processes/_fleet.html.erb
|
|
109
109
|
- app/views/flightdeck/processes/_row.html.erb
|
|
110
110
|
- app/views/flightdeck/processes/index.html.erb
|
|
111
|
-
- app/views/flightdeck/processes/prune.turbo_stream.erb
|
|
112
111
|
- app/views/flightdeck/queues/_cards.html.erb
|
|
113
112
|
- app/views/flightdeck/queues/index.html.erb
|
|
114
|
-
- app/views/flightdeck/queues/update.turbo_stream.erb
|
|
115
113
|
- app/views/flightdeck/recurring_tasks/_table.html.erb
|
|
116
114
|
- app/views/flightdeck/recurring_tasks/index.html.erb
|
|
117
|
-
- app/views/flightdeck/recurring_tasks/run.turbo_stream.erb
|
|
118
115
|
- app/views/flightdeck/shared/_toast.html.erb
|
|
116
|
+
- app/views/flightdeck/shared/refresh.turbo_stream.erb
|
|
119
117
|
- app/views/layouts/flightdeck/application.html.erb
|
|
120
118
|
- config/routes.rb
|
|
121
119
|
- lib/flightdeck.rb
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
<turbo-stream action="append" target="fd-toasts">
|
|
2
|
-
<template><%= render partial: "flightdeck/shared/toast", formats: [ :html ], locals: { toast: @toast } %></template>
|
|
3
|
-
</turbo-stream>
|
|
4
|
-
|
|
5
|
-
<%# Re-render the list the action was launched from, so counts, rows and the
|
|
6
|
-
state tabs all settle in the same round trip. A page that has no jobs frame
|
|
7
|
-
(the job detail page, say) simply ignores this stream. %>
|
|
8
|
-
<turbo-stream action="replace" target="fd-jobs">
|
|
9
|
-
<template>
|
|
10
|
-
<turbo-frame id="fd-jobs"
|
|
11
|
-
data-controller="refresh"
|
|
12
|
-
data-refresh-interval-value="<%= (Flightdeck.config.poll_interval.to_f * 1000).round %>"
|
|
13
|
-
data-refresh-url-value="<%= fd_refreshed_list_url %>">
|
|
14
|
-
<%= render partial: "flightdeck/jobs/list", formats: [ :html ],
|
|
15
|
-
locals: { query: @refreshed_query, rows: @refreshed_rows, groups: @refreshed_groups } %>
|
|
16
|
-
</turbo-frame>
|
|
17
|
-
</template>
|
|
18
|
-
</turbo-stream>
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
<turbo-stream action="append" target="fd-toasts">
|
|
2
|
-
<template><%= render partial: "flightdeck/shared/toast", formats: [ :html ], locals: { toast: @toast } %></template>
|
|
3
|
-
</turbo-stream>
|
|
4
|
-
|
|
5
|
-
<turbo-stream action="replace" target="fd-processes">
|
|
6
|
-
<template>
|
|
7
|
-
<turbo-frame id="fd-processes"
|
|
8
|
-
target="_top"
|
|
9
|
-
data-controller="refresh"
|
|
10
|
-
data-refresh-interval-value="<%= (Flightdeck.config.poll_interval.to_f * 1000).round %>"
|
|
11
|
-
data-refresh-url-value="<%= processes_path %>">
|
|
12
|
-
<%= render partial: "flightdeck/processes/fleet", formats: [ :html ], locals: { registry: @registry } %>
|
|
13
|
-
</turbo-frame>
|
|
14
|
-
</template>
|
|
15
|
-
</turbo-stream>
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
<turbo-stream action="append" target="fd-toasts">
|
|
2
|
-
<template><%= render partial: "flightdeck/shared/toast", formats: [ :html ], locals: { toast: @toast } %></template>
|
|
3
|
-
</turbo-stream>
|
|
4
|
-
|
|
5
|
-
<turbo-stream action="replace" target="fd-queues">
|
|
6
|
-
<template>
|
|
7
|
-
<turbo-frame id="fd-queues"
|
|
8
|
-
target="_top"
|
|
9
|
-
data-controller="refresh"
|
|
10
|
-
data-refresh-interval-value="<%= (Flightdeck.config.poll_interval.to_f * 1000).round %>"
|
|
11
|
-
data-refresh-url-value="<%= queues_path %>">
|
|
12
|
-
<%= render partial: "flightdeck/queues/cards", formats: [ :html ], locals: { stats: @stats, sparklines: @sparklines } %>
|
|
13
|
-
</turbo-frame>
|
|
14
|
-
</template>
|
|
15
|
-
</turbo-stream>
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
<turbo-stream action="append" target="fd-toasts">
|
|
2
|
-
<template><%= render partial: "flightdeck/shared/toast", formats: [ :html ], locals: { toast: @toast } %></template>
|
|
3
|
-
</turbo-stream>
|
|
4
|
-
|
|
5
|
-
<turbo-stream action="replace" target="fd-recurring">
|
|
6
|
-
<template>
|
|
7
|
-
<turbo-frame id="fd-recurring"
|
|
8
|
-
target="_top"
|
|
9
|
-
data-controller="refresh"
|
|
10
|
-
data-refresh-interval-value="<%= (Flightdeck.config.poll_interval.to_f * 1000).round %>"
|
|
11
|
-
data-refresh-url-value="<%= recurring_tasks_path %>">
|
|
12
|
-
<%= render partial: "flightdeck/recurring_tasks/table", formats: [ :html ], locals: { catalog: @catalog } %>
|
|
13
|
-
</turbo-frame>
|
|
14
|
-
</template>
|
|
15
|
-
</turbo-stream>
|