{% extends 'generic/_base.html' %} {% load helpers %} {% load i18n %} {% block title %}{% trans "Workflow Queue" %}{% endblock %} {% block subtitle %}
{% trans "Auto-refresh every 2s" %}
{% endblock %} {% block content %} {% if engine_settings.engine_status == "maintenance" %} {% elif engine_settings.engine_status == "disabled" %} {% endif %} {% if not snapshot.available %}
{% trans "Queue unavailable" %}: {{ snapshot.error }}
{% endif %}
{% trans "RQ queued" %}
{{ snapshot.rq_queued_count }}
{% trans "RQ started" %}
{{ snapshot.rq_started_count }}
{% trans "RQ failed" %}
{{ snapshot.rq_failed_count }}
{% trans "Workers" %}
{{ snapshot.workers|length }}

{% trans "Workers" %}

{% if snapshot.workers %} {% for w in snapshot.workers %} {% endfor %}
{% trans "Name" %} {% trans "State" %} {% trans "Current job" %}
{{ w.name }} {% if w.state == "idle" %} idle {% elif w.state == "busy" %} busy {% elif w.state == "started" %} started {% elif w.state == "suspended" %} suspended {% else %} {{ w.state }} {% endif %} {{ w.current_job_id|default:"-" }}
{% else %}
{% trans "No workers connected. Start one with: python manage.py rqworker netbox_orchestrator.workflows" %}
{% endif %}

{% trans "Pending / Queued" %}

{% for j in snapshot.pending_jobs %} {% empty %} {% endfor %}
{% trans "Job" %} {% trans "Workflow" %} {% trans "Status" %} {% trans "Reporter" %} {% trans "Queued at" %} {% trans "Actions" %}
#{{ j.pk }} {{ j.workflow.name }} {% badge j.get_status_display %} {% if j.created_by %} {% if j.created_by.first_name or j.created_by.last_name %}{{ j.created_by.get_full_name }}{% else %}{{ j.created_by.username }}{% endif %} {% else %}—{% endif %} {{ j.queued_at|placeholder }} {% include 'netbox_orchestrator/partials/kill_button.html' with job=j %}
{% trans "Queue is idle." %}

{% trans "Running" %}

{% for j in snapshot.running_jobs %} {% empty %} {% endfor %}
{% trans "Job" %} {% trans "Workflow" %} {% trans "Status" %} {% trans "Reporter" %} {% trans "Started" %} {% trans "Actions" %}
#{{ j.pk }} {{ j.workflow.name }} {% badge j.get_status_display %} {% if j.created_by %} {% if j.created_by.first_name or j.created_by.last_name %}{{ j.created_by.get_full_name }}{% else %}{{ j.created_by.username }}{% endif %} {% else %}—{% endif %} {{ j.started_at|placeholder }} {% include 'netbox_orchestrator/partials/kill_button.html' with job=j %}
{% trans "Nothing running." %}
{% endblock content %}