databuild/databuild/web/templates/partitions/detail.html
Stuart Axelbrooke 17d5987517
Some checks failed
/ setup (push) Has been cancelled
WIP
2025-11-28 12:48:54 +08:00

93 lines
2.9 KiB
HTML

{% import "base.html" as base %}
{% call base::head("Partition - DataBuild") %}
{% call base::nav("partitions", base.graph_label) %}
<div class="detail-header" style="view-transition-name:partition-header">
<h1>
{% if partition.has_partition_ref %}<span class="partition-ref" style="font-size:1.125rem">{{ partition.partition_ref }}</span>{% else %}Unknown{% endif %}
</h1>
{% match partition.status %}
{% when Some with (s) %}<span class="status status-{{ s.name_lowercase }}">{{ s.name }}</span>
{% when None %}
{% endmatch %}
</div>
<div class="detail-section">
<h2>Details</h2>
<div class="detail-grid">
<div class="detail-item">
<label>UUID</label>
<span style="font-family:monospace;font-size:.8125rem">{{ partition.uuid }}</span>
</div>
<div class="detail-item">
<label>Last Updated</label>
<span>
{% match partition.last_updated_timestamp %}
{% when Some with (ts) %}{{ ts }}
{% when None %}-
{% endmatch %}
</span>
</div>
</div>
</div>
{% match partition.built_by_job_run_id %}
{% when Some with (job_run_id) %}
<div class="detail-section">
<h2>Lineage - Built By</h2>
<p>
<a href="/job_runs/{{ job_run_id }}">{{ job_run_id }}</a>
<span style="color:var(--color-text-muted);font-size:.75rem;margin-left:.5rem">(view job run for input partitions)</span>
</p>
</div>
{% when None %}
{% endmatch %}
{% if !partition.downstream_partition_uuids.is_empty() %}
<div class="detail-section">
<h2>Lineage - Downstream Consumers ({{ partition.downstream_partition_uuids.len() }})</h2>
<ul class="partition-list">
{% for uuid in partition.downstream_partition_uuids %}
<li>
<span style="font-family:monospace;font-size:.8125rem">{{ uuid }}</span>
</li>
{% endfor %}
</ul>
</div>
{% endif %}
{% if !partition.job_run_ids.is_empty() %}
<div class="detail-section">
<h2>Related Job Runs ({{ partition.job_run_ids.len() }})</h2>
<ul class="partition-list">
{% for id in partition.job_run_ids %}
<li><a href="/job_runs/{{ id }}">{{ id }}</a></li>
{% endfor %}
</ul>
</div>
{% endif %}
{% if !partition.want_ids.is_empty() %}
<div class="detail-section">
<h2>Referenced by Wants ({{ partition.want_ids.len() }})</h2>
<ul class="partition-list">
{% for id in partition.want_ids %}
<li><a href="/wants/{{ id }}">{{ id }}</a></li>
{% endfor %}
</ul>
</div>
{% endif %}
{% if !partition.taint_ids.is_empty() %}
<div class="detail-section">
<h2>Taints ({{ partition.taint_ids.len() }})</h2>
<ul class="partition-list">
{% for id in partition.taint_ids %}
<li>{{ id }}</li>
{% endfor %}
</ul>
</div>
{% endif %}
{% call base::footer() %}