text/html
•
2.68 KB
•
74 lines
<html>
<head>
<title>{{ owner.name }}/{{ project.name }} - CI Job</title>
</head>
<body>
{% include "partials/sidebar.html" %}
<main>
<section>
<div class="page-header">
<h1 class="project-header">
<a href="{{ owner.uri() }}">{{ owner.name }}</a> /
<a href="{{ project.uri() }}">{{ project.name }}</a> /
<a href="/~{{ owner.slug }}/{{ project.slug }}/ci">CI</a>
</h1>
</div>
{% include "partials/project_tabs.html" %}
<div class="card">
<div class="issue-header">
<h2>{{ job.workflow_name }}</h2>
<span class="issue-status status-{{ job.status.as_str() }}">{{ job.status.as_str() }}</span>
</div>
<div class="ci-job-info">
<div class="ci-job-detail">
<span class="ci-label">Branch</span>
<span class="ci-value">{{ job.branch }}</span>
</div>
<div class="ci-job-detail">
<span class="ci-label">Commit</span>
<span class="ci-value"><code>{{ job.short_hash() }}</code></span>
</div>
<div class="ci-job-detail">
<span class="ci-label">Started</span>
<span class="ci-value">{{ job.relative_time() }}</span>
</div>
{% if let Some(exit_code) = job.exit_code %}
<div class="ci-job-detail">
<span class="ci-label">Exit Code</span>
<span class="ci-value {% if *exit_code == 0 %}ci-exit-success{% else %}ci-exit-failure{% endif %}">{{ exit_code }}</span>
</div>
{% endif %}
</div>
<div class="ci-output-section">
<div class="ci-output-header">
<h3>Output</h3>
{% match job.status %}
{% when CiJobStatus::Success %}
{% when CiJobStatus::Failed %}
<a href="{{ job.uri() }}/log" class="btn btn-small" target="_blank">View raw</a>
{% when _ %}
{% endmatch %}
</div>
{% match job.status %}
{% when CiJobStatus::Pending %}
<p class="ci-output-pending">Job is pending. Output will be available once the job starts.</p>
{% when CiJobStatus::Running %}
<p class="ci-output-pending">Job is running. Output will be available when the job completes.</p>
{% when CiJobStatus::Success %}
<pre class="ci-log">{{ log_content }}</pre>
{% when CiJobStatus::Failed %}
<pre class="ci-log">{{ log_content }}</pre>
{% endmatch %}
</div>
</div>
</section>
</main>
</body>
</html>