capsula-server 0.13.0

Web server for managing and viewing Capsula runs
Documentation
{% extends "base.html" %}

{% block title %}Runs - Capsula Server{% endblock %}

{% block content %}
<div class="page-header">
    <h2>Runs{% match vault %}{% when Some with (v) %} in {{ v }}{% when None %}{% endmatch %}</h2>
    {% match vault %}
    {% when Some with (_v) %}
    <a href="/runs" class="button-secondary">View All Runs</a>
    {% when None %}
    {% endmatch %}
</div>

{% if runs.is_empty() %}
<div class="empty-state">
    <p>No runs found.{% match vault %}{% when Some with (_v) %} Try viewing all runs.{% when None %}{% endmatch %}</p>
</div>
{% else %}
<div class="table-container">
    <table class="runs-table">
        <thead>
            <tr>
                <th>Timestamp</th>
                <th>Name</th>
                <th>Command</th>
                <th>Vault</th>
                <th>Duration</th>
                <th>Exit Code</th>
            </tr>
        </thead>
        <tbody>
            {% for run in runs %}
            <tr>
                <td>{{ run.timestamp.format("%Y-%m-%d %H:%M:%S") }}</td>
                <td><a href="/runs/{{ run.id }}">{{ run.name }}</a></td>
                <td><code>{{ run.command|format_command }}</code></td>
                <td><a href="/runs?vault={{ run.vault }}">{{ run.vault }}</a></td>
                <td>
                    {% match run.duration_ms %}
                    {% when Some with (ms) %}
                    {{ ms }}ms
                    {% when None %}
                    -
                    {% endmatch %}
                </td>
                <td>
                    {% match run.exit_code %}
                    {% when Some with (code) %}
                    <span class="badge {% if *code == 0 %}badge-success{% else %}badge-error{% endif %}">{{ code }}</span>
                    {% when None %}
                    -
                    {% endmatch %}
                </td>
            </tr>
            {% endfor %}
        </tbody>
    </table>
</div>

{% if total_pages > 1 %}
<div class="pagination">
    {% if page > 1 %}
    <a href="/runs?page={{ page - 1 }}{% match vault %}{% when Some with (v) %}&vault={{ v }}{% when None %}{% endmatch %}" class="button-secondary">Previous</a>
    {% endif %}
    
    <span class="page-info">Page {{ page }} of {{ total_pages }}</span>
    
    {% if page < total_pages %}
    <a href="/runs?page={{ page + 1 }}{% match vault %}{% when Some with (v) %}&vault={{ v }}{% when None %}{% endmatch %}" class="button-secondary">Next</a>
    {% endif %}
</div>
{% endif %}
{% endif %}
{% endblock %}