sidekiq-hierarchy 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +10 -0
  3. data/.rspec +2 -0
  4. data/.ruby-gemset +1 -0
  5. data/.ruby-version +1 -0
  6. data/.travis.yml +6 -0
  7. data/CHANGELOG.md +14 -0
  8. data/CONTRIBUTING.md +57 -0
  9. data/Gemfile +7 -0
  10. data/LICENSE.txt +21 -0
  11. data/README.md +396 -0
  12. data/Rakefile +6 -0
  13. data/bin/console +14 -0
  14. data/bin/setup +7 -0
  15. data/img/dashboard.png +0 -0
  16. data/img/failed_workflow.png +0 -0
  17. data/img/in_progress_workflow.png +0 -0
  18. data/img/job.png +0 -0
  19. data/img/workflow_set.png +0 -0
  20. data/lib/sidekiq-hierarchy.rb +1 -0
  21. data/lib/sidekiq/hierarchy.rb +105 -0
  22. data/lib/sidekiq/hierarchy/callback_registry.rb +33 -0
  23. data/lib/sidekiq/hierarchy/client/middleware.rb +23 -0
  24. data/lib/sidekiq/hierarchy/faraday/middleware.rb +16 -0
  25. data/lib/sidekiq/hierarchy/http.rb +8 -0
  26. data/lib/sidekiq/hierarchy/job.rb +290 -0
  27. data/lib/sidekiq/hierarchy/notifications.rb +8 -0
  28. data/lib/sidekiq/hierarchy/observers.rb +9 -0
  29. data/lib/sidekiq/hierarchy/observers/job_update.rb +15 -0
  30. data/lib/sidekiq/hierarchy/observers/workflow_update.rb +18 -0
  31. data/lib/sidekiq/hierarchy/rack/middleware.rb +27 -0
  32. data/lib/sidekiq/hierarchy/server/middleware.rb +62 -0
  33. data/lib/sidekiq/hierarchy/version.rb +5 -0
  34. data/lib/sidekiq/hierarchy/web.rb +149 -0
  35. data/lib/sidekiq/hierarchy/workflow.rb +130 -0
  36. data/lib/sidekiq/hierarchy/workflow_set.rb +134 -0
  37. data/sidekiq-hierarchy.gemspec +33 -0
  38. data/web/views/_job_progress_bar.erb +28 -0
  39. data/web/views/_job_table.erb +37 -0
  40. data/web/views/_job_timings.erb +10 -0
  41. data/web/views/_progress_bar.erb +8 -0
  42. data/web/views/_search_bar.erb +17 -0
  43. data/web/views/_summary_bar.erb +30 -0
  44. data/web/views/_workflow_progress_bar.erb +24 -0
  45. data/web/views/_workflow_set_clear.erb +7 -0
  46. data/web/views/_workflow_table.erb +33 -0
  47. data/web/views/_workflow_timings.erb +14 -0
  48. data/web/views/_workflow_tree.erb +82 -0
  49. data/web/views/_workflow_tree_node.erb +18 -0
  50. data/web/views/job.erb +12 -0
  51. data/web/views/not_found.erb +1 -0
  52. data/web/views/status.erb +120 -0
  53. data/web/views/workflow.erb +45 -0
  54. data/web/views/workflow_set.erb +3 -0
  55. metadata +225 -0
@@ -0,0 +1,45 @@
1
+ <h3>Workflow <%= @workflow.jid %></h3>
2
+
3
+ <%= erb sidekiq_hierarchy_template(:_workflow_progress_bar), locals: {workflow: @workflow} %>
4
+
5
+ <div class="table_container">
6
+ <table class="table table-condensed table-white">
7
+ <thead>
8
+ <tr>
9
+ <th>Status</th>
10
+ <th>Enqueued at</th>
11
+ <th>Run at</th>
12
+ <th>Completed at</th>
13
+ <th>Failed at</th>
14
+ </tr>
15
+ </thead>
16
+
17
+ <tbody>
18
+ <tr>
19
+ <td><%= @workflow.status %></td>
20
+ <td><%= @workflow.enqueued_at %></td>
21
+ <td><%= @workflow.run_at %></td>
22
+ <td><%= @workflow.complete_at %></td>
23
+ <td><%= @workflow.failed_at %></td>
24
+ </tr>
25
+ </tbody>
26
+ </table>
27
+ </div>
28
+
29
+ <%= erb sidekiq_hierarchy_template(:_workflow_timings), locals: {workflow: @workflow} %>
30
+
31
+ <h4>Job Tree</h4>
32
+ <%= erb sidekiq_hierarchy_template(:_workflow_tree), locals: {root: @workflow.root} %>
33
+
34
+ <h4>Jobs</h4>
35
+ <%= erb sidekiq_hierarchy_template(:_job_table), locals: {jobs: @workflow.jobs} %>
36
+
37
+ <% unless @workflow.running? %>
38
+ <form action="<%= workflow_url(@workflow) %>" method="post">
39
+ <div style="margin:0;padding:0">
40
+ <input name="_method" type="hidden" value="delete" />
41
+ <input name="authenticity_token" type="hidden" value="<%= session[:csrf] %>">
42
+ </div>
43
+ <button type="submit" class="btn btn-danger" onclick="return confirm('Are you sure? This is irreversible')">Delete</button>
44
+ </form>
45
+ <% end %>
@@ -0,0 +1,3 @@
1
+ <h3><%= @status.to_s.capitalize %> Workflows</h3>
2
+
3
+ <%= erb sidekiq_hierarchy_template(:_workflow_table), locals: {workflows: @workflows} %>
metadata ADDED
@@ -0,0 +1,225 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: sidekiq-hierarchy
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.1
5
+ platform: ruby
6
+ authors:
7
+ - Anuj Das
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2015-11-17 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: sidekiq
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '3.3'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '3.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: bundler
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.10'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.10'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '10.0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '10.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rspec
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '3.0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '3.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec-its
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: fakeredis
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rspec-sidekiq
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: faraday
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: rack
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ description: A set of sidekiq middlewares to track workflows consisting of multiple
140
+ levels of sidekiq jobs
141
+ email:
142
+ - anujdas@gmail.com
143
+ executables: []
144
+ extensions: []
145
+ extra_rdoc_files: []
146
+ files:
147
+ - ".gitignore"
148
+ - ".rspec"
149
+ - ".ruby-gemset"
150
+ - ".ruby-version"
151
+ - ".travis.yml"
152
+ - CHANGELOG.md
153
+ - CONTRIBUTING.md
154
+ - Gemfile
155
+ - LICENSE.txt
156
+ - README.md
157
+ - Rakefile
158
+ - bin/console
159
+ - bin/setup
160
+ - img/dashboard.png
161
+ - img/failed_workflow.png
162
+ - img/in_progress_workflow.png
163
+ - img/job.png
164
+ - img/workflow_set.png
165
+ - lib/sidekiq-hierarchy.rb
166
+ - lib/sidekiq/hierarchy.rb
167
+ - lib/sidekiq/hierarchy/callback_registry.rb
168
+ - lib/sidekiq/hierarchy/client/middleware.rb
169
+ - lib/sidekiq/hierarchy/faraday/middleware.rb
170
+ - lib/sidekiq/hierarchy/http.rb
171
+ - lib/sidekiq/hierarchy/job.rb
172
+ - lib/sidekiq/hierarchy/notifications.rb
173
+ - lib/sidekiq/hierarchy/observers.rb
174
+ - lib/sidekiq/hierarchy/observers/job_update.rb
175
+ - lib/sidekiq/hierarchy/observers/workflow_update.rb
176
+ - lib/sidekiq/hierarchy/rack/middleware.rb
177
+ - lib/sidekiq/hierarchy/server/middleware.rb
178
+ - lib/sidekiq/hierarchy/version.rb
179
+ - lib/sidekiq/hierarchy/web.rb
180
+ - lib/sidekiq/hierarchy/workflow.rb
181
+ - lib/sidekiq/hierarchy/workflow_set.rb
182
+ - sidekiq-hierarchy.gemspec
183
+ - web/views/_job_progress_bar.erb
184
+ - web/views/_job_table.erb
185
+ - web/views/_job_timings.erb
186
+ - web/views/_progress_bar.erb
187
+ - web/views/_search_bar.erb
188
+ - web/views/_summary_bar.erb
189
+ - web/views/_workflow_progress_bar.erb
190
+ - web/views/_workflow_set_clear.erb
191
+ - web/views/_workflow_table.erb
192
+ - web/views/_workflow_timings.erb
193
+ - web/views/_workflow_tree.erb
194
+ - web/views/_workflow_tree_node.erb
195
+ - web/views/job.erb
196
+ - web/views/not_found.erb
197
+ - web/views/status.erb
198
+ - web/views/workflow.erb
199
+ - web/views/workflow_set.erb
200
+ homepage: https://www.github.com/anujdas/sidekiq-hierarchy
201
+ licenses:
202
+ - MIT
203
+ metadata: {}
204
+ post_install_message:
205
+ rdoc_options: []
206
+ require_paths:
207
+ - lib
208
+ required_ruby_version: !ruby/object:Gem::Requirement
209
+ requirements:
210
+ - - ">="
211
+ - !ruby/object:Gem::Version
212
+ version: '0'
213
+ required_rubygems_version: !ruby/object:Gem::Requirement
214
+ requirements:
215
+ - - ">="
216
+ - !ruby/object:Gem::Version
217
+ version: '0'
218
+ requirements: []
219
+ rubyforge_project:
220
+ rubygems_version: 2.4.5.1
221
+ signing_key:
222
+ specification_version: 4
223
+ summary: A set of sidekiq middlewares to track workflows consisting of multiple levels
224
+ of sidekiq jobs
225
+ test_files: []