Skip to content

Commit cad3b8b

Browse files
authored
Merge pull request #480 from vizor-games/master
Support Scheduled and Cancelled registries
2 parents ab62651 + 51e2816 commit cad3b8b

File tree

5 files changed

+42
-3
lines changed

5 files changed

+42
-3
lines changed

rq_dashboard/templates/rq_dashboard/jobs.html

+3-1
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,13 @@
1919
</div>
2020
<select class="custom-select" id="select-registry" title="Registry name">
2121
<option {% if registry_name == 'queued' %} selected {% endif %}>queued</option>
22+
<option {% if registry_name == 'scheduled' %} selected {% endif %}>scheduled</option>
2223
<option {% if registry_name == 'deferred' %} selected {% endif %}>deferred</option>
2324
<option {% if registry_name == 'started' %} selected {% endif %}>started</option>
2425
<option {% if registry_name == 'finished' %} selected {% endif %}>finished</option>
2526
<option {% if registry_name == 'failed' %} selected {% endif %}>failed</option>
26-
</select>
27+
<option {% if registry_name == 'canceled' %} selected {% endif %}>canceled</option>
28+
</select>
2729
</div>
2830

2931
<p class="intro">

rq_dashboard/templates/rq_dashboard/queues.html

+4
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,11 @@ <h1>Queues</h1>
1414
<th>Queue</th>
1515
<th class="narrow">Queued&nbsp;jobs</th>
1616
<th class="narrow">Deferred&nbsp;jobs</th>
17+
<th class="narrow">Scheduled&nbsp;jobs</th>
1718
<th class="narrow">Started&nbsp;jobs</th>
1819
<th class="narrow">Finished&nbsp;jobs</th>
1920
<th class="narrow">Failed&nbsp;jobs</th>
21+
<th class="narrow">Canceled&nbsp;jobs</th>
2022
</tr>
2123
</thead>
2224
<tbody>
@@ -32,9 +34,11 @@ <h1>Queues</h1>
3234
<td><%= d.name %></td>
3335
<td class="narrow"> <a href="<%= d.queued_url %>"><%= d.count %></a></td>
3436
<td class="narrow"> <a href="<%= d.deferred_url %>"><%= d.deferred_job_registry_count %></a></td>
37+
<td class="narrow"> <a href="<%= d.scheduled_url %>"><%= d.scheduled_job_registry_count %></a></td>
3538
<td class="narrow"> <a href="<%= d.started_url %>"><%= d.started_job_registry_count %></a></td>
3639
<td class="narrow"> <a href="<%= d.finished_url %>"><%= d.finished_job_registry_count %></a></td>
3740
<td class="failed"> <a href="<%= d.failed_url %>"><%= d.failed_job_registry_count %></a></td>
41+
<td class="failed"> <a href="<%= d.canceled_url %>"><%= d.canceled_job_registry_count %></a></td>
3842
</tr>
3943
</script>
4044

rq_dashboard/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
VERSION = "0.6.7"
1+
VERSION = "0.6.7.2"

rq_dashboard/web.py

+33
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,9 @@
4747
FailedJobRegistry,
4848
FinishedJobRegistry,
4949
StartedJobRegistry,
50+
ScheduledJobRegistry,
51+
CanceledJobRegistry,
52+
5053
)
5154
from six import string_types
5255

@@ -160,6 +163,24 @@ def serialize_queues(instance_number, queues):
160163
per_page="8",
161164
page="1",
162165
),
166+
canceled_job_registry_count=CanceledJobRegistry(q.name).count,
167+
canceled_url=url_for(
168+
".jobs_overview",
169+
instance_number=instance_number,
170+
queue_name=q.name,
171+
registry_name="canceled",
172+
per_page="8",
173+
page="1",
174+
),
175+
scheduled_job_registry_count=ScheduledJobRegistry(q.name).count,
176+
scheduled_url=url_for(
177+
".jobs_overview",
178+
instance_number=instance_number,
179+
queue_name=q.name,
180+
registry_name="scheduled",
181+
per_page="8",
182+
page="1",
183+
),
163184
)
164185
for q in queues
165186
]
@@ -232,6 +253,10 @@ def get_queue_registry_jobs_count(queue_name, registry_name, offset, per_page):
232253
current_queue = StartedJobRegistry(queue_name)
233254
elif registry_name == "finished":
234255
current_queue = FinishedJobRegistry(queue_name)
256+
elif registry_name == "scheduled":
257+
current_queue = ScheduledJobRegistry(queue_name)
258+
elif registry_name == "canceled":
259+
current_queue = CanceledJobRegistry(queue_name)
235260
else:
236261
current_queue = queue
237262
total_items = current_queue.count
@@ -410,6 +435,14 @@ def empty_queue(queue_name, registry_name):
410435
ids = FinishedJobRegistry(queue_name).get_job_ids()
411436
for id in ids:
412437
delete_job_view(id)
438+
elif registry_name == "canceled":
439+
ids = CanceledJobRegistry(queue_name).get_job_ids()
440+
for id in ids:
441+
delete_job_view(id)
442+
elif registry_name == "scheduled":
443+
ids = ScheduledJobRegistry(queue_name).get_job_ids()
444+
for id in ids:
445+
delete_job_view(id)
413446
return dict(status="OK")
414447

415448

version.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{ "version": "0.6.7" }
1+
{ "version": "0.6.7.2" }

0 commit comments

Comments
 (0)