| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- {% extends 'generic/object.html' %}
- {% load i18n %}
- {% load buttons %}
- {% load helpers %}
- {% load render_table from django_tables2 %}
- {% block breadcrumbs %}
- <li class="breadcrumb-item"><a href="{% url 'core:background_queue_list' %}">{% trans 'Background Tasks' %}</a></li>
- <li class="breadcrumb-item"><a href="{% url 'core:background_task_list' queue_index=queue_index status=job.get_status.value %}">{{ queue.name }}</a></li>
- {% endblock breadcrumbs %}
- {% block title %}{% trans "Job" %} {{ job.id }}{% endblock %}
- {% block subtitle %}
- <div class="text-secondary fs-5">
- <span>{% trans "Created" %} {{ job.created_at|isodatetime }}</span>
- </div>
- {% endblock subtitle %}
- {% block object_identifier %}{% endblock %}
- {% block controls %}
- <div class="btn-list mb-2">
- {% url 'core:background_task_delete' job_id=job.id as delete_url %}
- {% include "buttons/delete.html" with url=delete_url %}
- {% if job.is_started %}
- <a href="{% url 'core:background_task_stop' job.id %}" class="btn btn-primary">
- <i class="mdi mdi-stop-circle-outline"></i> {% trans "Stop" %}
- </a>
- {% endif %}
- {% if job.is_failed %}
- <a href="{% url 'core:background_task_requeue' job.id %}" class="btn btn-primary">
- <i class="mdi mdi-sync"></i> {% trans "Requeue" %}
- </a>
- {% endif %}
- {% if not job.is_queued and not job.is_failed %}
- <a href="{% url 'core:background_task_enqueue' job.id %}" class="btn btn-primary">
- <i class="mdi mdi-sync"></i> {% trans "Enqueue" %}
- </a>
- {% endif %}
- </div>
- {% endblock controls %}
- {% block tabs %}
- <ul class="nav nav-tabs">
- <li class="nav-item" role="presentation">
- <a class="nav-link active" role="tab">{% trans "Job" %}</a>
- </li>
- </ul>
- {% endblock tabs %}
- {% block content %}
- <div class="row">
- <div class="col col-md-12">
- <div class="card">
- <h2 class="card-header">{% trans "Job" %}</h2>
- <table class="table table-hover attr-table">
- <tr>
- <th scope="row">{% trans "Queue" %}</th>
- <td>{{ job.origin|placeholder }}</td>
- </tr>
- <tr>
- <th scope="row">{% trans "Timeout" %}</th>
- <td>{{ job.timeout|placeholder }}</td>
- </tr>
- <tr>
- <th scope="row">{% trans "Result TTL" %}</th>
- <td>{{ job.result_ttl|placeholder }}</td>
- </tr>
- <tr>
- <th scope="row">{% trans "Created" %}</th>
- <td>{{ job.created_at|isodatetime }}</td>
- </tr>
- <tr>
- <th scope="row">{% trans "Queued" %}</th>
- <td>{{ job.enqueued_at|isodatetime }}</td>
- </tr>
- <tr>
- <th scope="row">{% trans "Status" %}</th>
- <td>{{ job.get_status|placeholder }}</td>
- </tr>
- <tr>
- <th scope="row">{% trans "Callable" %}</th>
- <td>{{ object.get_type_display|placeholder }}</td>
- </tr>
- <tr>
- <th scope="row">{% trans "Meta" %}</th>
- <td>{{ job.meta|placeholder }}</td>
- </tr>
- <tr>
- <th scope="row">{% trans "Arguments" %}</th>
- <td>{{ jobs.args|placeholder }}</td>
- </tr>
- <tr>
- <th scope="row">{% trans "Keyword Arguments" %}</th>
- {# TODO: Render as formatted JSON #}
- <td>{{ job.kwargs }}</td>
- </tr>
- {% if dependency_id %}
- <tr>
- <th scope="row">{% trans "Depends on" %}</th>
- <td><a href="{% url 'core:background_task' job.id %}">{{ dependency_id }}</a></td>
- </tr>
- {% endif %}
- {% if exc_info %}
- <tr>
- <th scope="row">{% trans "Exception" %}</th>
- <td><pre>{% if job.exc_info %}{{ job.exc_info|linebreaks }}{% endif %}</pre></td>
- </tr>
- {% endif %}
- </table>
- </div>
- </div>
- </div>
- {% endblock content %}
|