mirror of
https://github.com/netbox-community/netbox.git
synced 2025-08-18 05:28:16 -06:00
14729 queue pages
This commit is contained in:
parent
031cd04413
commit
e92bd29e28
@ -9,14 +9,14 @@ from utilities.templatetags.helpers import annotated_date
|
|||||||
|
|
||||||
|
|
||||||
class BackgroundQueueTable(BaseTable):
|
class BackgroundQueueTable(BaseTable):
|
||||||
name = tables.LinkColumn("core:background_task_list", args=[A("index")], verbose_name=_("Name"))
|
name = tables.LinkColumn("core:background_task_list", args=[A("index"), "queued"], verbose_name=_("Name"))
|
||||||
jobs = tables.LinkColumn("core:background_task_list", args=[A("index")], verbose_name=_("Queued"))
|
jobs = tables.LinkColumn("core:background_task_list", args=[A("index"), "queued"], verbose_name=_("Queued"))
|
||||||
oldest_job_timestamp = tables.Column(verbose_name=_("Oldest Queued"))
|
oldest_job_timestamp = tables.Column(verbose_name=_("Oldest Queued"))
|
||||||
started_jobs = tables.Column(verbose_name=_("Active"))
|
started_jobs = tables.LinkColumn("core:background_task_list", args=[A("index"), "started"], verbose_name=_("Active"))
|
||||||
deferred_jobs = tables.Column(verbose_name=_("Deferred"))
|
deferred_jobs = tables.LinkColumn("core:background_task_list", args=[A("index"), "deferred"], verbose_name=_("Deferred"))
|
||||||
finished_jobs = tables.Column(verbose_name=_("Finished"))
|
finished_jobs = tables.LinkColumn("core:background_task_list", args=[A("index"), "finished"], verbose_name=_("Finished"))
|
||||||
failed_jobs = tables.Column(verbose_name=_("Failed"))
|
failed_jobs = tables.LinkColumn("core:background_task_list", args=[A("index"), "failed"], verbose_name=_("Failed"))
|
||||||
scheduled_jobs = tables.Column(verbose_name=_("Scheduled"))
|
scheduled_jobs = tables.LinkColumn("core:background_task_list", args=[A("index"), "scheduled"], verbose_name=_("Scheduled"))
|
||||||
workers = tables.Column(verbose_name=_("Workers"))
|
workers = tables.Column(verbose_name=_("Workers"))
|
||||||
host = tables.Column(accessor="connection_kwargs__host", verbose_name=_("Host"))
|
host = tables.Column(accessor="connection_kwargs__host", verbose_name=_("Host"))
|
||||||
port = tables.Column(accessor="connection_kwargs__port", verbose_name=_("Port"))
|
port = tables.Column(accessor="connection_kwargs__port", verbose_name=_("Port"))
|
||||||
@ -34,7 +34,7 @@ class BackgroundQueueTable(BaseTable):
|
|||||||
|
|
||||||
|
|
||||||
class BackgroundTaskTable(BaseTable):
|
class BackgroundTaskTable(BaseTable):
|
||||||
id = tables.Column(empty_values=(), verbose_name=_("ID"))
|
id = tables.LinkColumn("core:background_task", args=[A("id")], verbose_name=_("ID"))
|
||||||
created_at = tables.DateTimeColumn(verbose_name=_("Created"))
|
created_at = tables.DateTimeColumn(verbose_name=_("Created"))
|
||||||
enqueued_at = tables.DateTimeColumn(verbose_name=_("Enqueued"))
|
enqueued_at = tables.DateTimeColumn(verbose_name=_("Enqueued"))
|
||||||
ended_at = tables.DateTimeColumn(verbose_name=_("Ended"))
|
ended_at = tables.DateTimeColumn(verbose_name=_("Ended"))
|
||||||
@ -50,12 +50,6 @@ class BackgroundTaskTable(BaseTable):
|
|||||||
'id', 'created_at', 'enqueued_at', 'ended_at', 'status', 'callable',
|
'id', 'created_at', 'enqueued_at', 'ended_at', 'status', 'callable',
|
||||||
)
|
)
|
||||||
|
|
||||||
def render_id(self, value, record):
|
|
||||||
return mark_safe('<a href=' + reverse(
|
|
||||||
"core:background_task",
|
|
||||||
args=[value]) + '>' + value + '</a>'
|
|
||||||
)
|
|
||||||
|
|
||||||
def render_status(self, value, record):
|
def render_status(self, value, record):
|
||||||
return record.get_status
|
return record.get_status
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ urlpatterns = (
|
|||||||
|
|
||||||
# Background Tasks
|
# Background Tasks
|
||||||
path('background-queues/', views.BackgroundQueueListView.as_view(), name='background_queue_list'),
|
path('background-queues/', views.BackgroundQueueListView.as_view(), name='background_queue_list'),
|
||||||
path('background-queues/<int:queue_index>/', views.BackgroundTaskListView.as_view(), name='background_task_list'),
|
path('background-queues/<int:queue_index>/<str:status>/', views.BackgroundTaskListView.as_view(), name='background_task_list'),
|
||||||
path('background-tasks/<str:job_id>/', views.BackgroundTaskDetailView.as_view(), name='background_task'),
|
path('background-tasks/<str:job_id>/', views.BackgroundTaskDetailView.as_view(), name='background_task'),
|
||||||
|
|
||||||
# Config revisions
|
# Config revisions
|
||||||
|
@ -265,7 +265,7 @@ class BackgroundTaskListView(UserPassesTestMixin, View):
|
|||||||
def test_func(self):
|
def test_func(self):
|
||||||
return self.request.user.is_staff
|
return self.request.user.is_staff
|
||||||
|
|
||||||
def get(self, request, queue_index):
|
def get(self, request, queue_index, status):
|
||||||
queue = get_queue_by_index(queue_index)
|
queue = get_queue_by_index(queue_index)
|
||||||
|
|
||||||
if queue.count > 0:
|
if queue.count > 0:
|
||||||
@ -278,6 +278,7 @@ class BackgroundTaskListView(UserPassesTestMixin, View):
|
|||||||
return render(request, 'core/background_task_list.html', {
|
return render(request, 'core/background_task_list.html', {
|
||||||
'table': table,
|
'table': table,
|
||||||
'queue': queue,
|
'queue': queue,
|
||||||
|
'status': status,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
{{ block.super }}
|
{{ block.super }}
|
||||||
{% endblock page-header %}
|
{% endblock page-header %}
|
||||||
|
|
||||||
{% block title %}{% trans "Queued Jobs in " %}{{ queue.name }}{% endblock %}
|
{% block title %}{{ status|capfirst }} {% trans "Jobs in " %}{{ queue.name }}{% endblock %}
|
||||||
|
|
||||||
{% block tabs %}
|
{% block tabs %}
|
||||||
<ul class="nav nav-tabs px-3">
|
<ul class="nav nav-tabs px-3">
|
||||||
|
Loading…
Reference in New Issue
Block a user