1 {% extends
"base.html" %}
3 {% block title %}{{ _(
"Job") }}: {{ job.name }}{% end block %}
8 <div class=
"col-12 col-sm-12 col-md-12 col-lg-12 col-xl-12">
9 <nav aria-label=
"breadcrumb" role=
"navigation">
10 <ol class=
"breadcrumb">
11 <li class=
"breadcrumb-item"><a href=
"/">{{ _(
"Home") }}
</a></li>
12 <li class=
"breadcrumb-item"><a href=
"/packages">{{ _(
"Packages") }}
</a></li>
13 <li class=
"breadcrumb-item"><a href=
"/package/{{ build.pkg.name }}">{{ build.pkg.name }}
</a></li>
14 <li class=
"breadcrumb-item"><a href=
"/build/{{ build.uuid }}">{{ build.pkg.friendly_version }}
</a></li>
15 <li class=
"breadcrumb-item active"><a href=
"/job/{{ job.uuid }}">{{ job.arch }}
</a></li>
22 {% if current_user and job.state in (
"dispatching",
"running",
"uploading",
"aborted",
"failed",
"finished") %}
23 <div class=
"col-12 col-sm-12 col-md-9 col-lg-10 col-xl-10">
24 <h2 style=
"word-wrap: break-word;">
25 {{ _(
"Build job") }}: {{ job.name }}
26 {% module JobState(job,
cls=
"float-lg-right float-xl-right", show_icon=False) %}
28 <small>{{ job.pkg.summary }}
</small>
31 <div class=
"col-12 col-sm-12 col-md-3 col-lg-2 col-xl-2">
32 <div class=
"dropdown">
33 <button class=
"btn btn-block btn-light dropdown-toggle mb-2" type=
"button" id=
"dropdownMenuButton" data-toggle=
"dropdown" aria-haspopup=
"true" aria-expanded=
"false">
36 <div class=
"dropdown-menu dropdown-menu-right" aria-labelledby=
"dropdownMenuButton">
37 {% if job.state in (
"dispatching",
"running",
"uploading") %}
38 <a class=
"dropdown-item" href=
"/job/{{ job.uuid }}/abort">
41 {% elif job.state in (
"aborted",
"failed") %}
42 <a class=
"dropdown-item" href=
"/job/{{ job.uuid }}/schedule?type=rebuild">
43 {{ _(
"Restart job") }}
45 {% elif job.state ==
"finished" %}
46 <a class=
"dropdown-item" href=
"/job/{{ job.uuid }}/schedule?type=test">
47 {{ _(
"Schedule test build") }}
54 <div class=
"col-12 col-sm-12 col-md-12 col-lg-12 col-xl-12">
55 <h2 style=
"word-wrap: break-word;">
56 {{ _(
"Build job") }}: {{ job.name }}
57 {% module JobState(job,
cls=
"float-lg-right float-xl-right", show_icon=False) %}
59 <small>{{ job.pkg.summary }}
</small>
69 <div class=
"col-12 col-sm-12 col-md-12 col-lg-12 col-xl-12">
70 <div class=
"alert alert-info">
71 {{
"<br />".join(job.message.splitlines()) }}
77 {% if job.state ==
"aborted" and job.aborted_state %}
79 <div class=
"col-12 col-sm-12 col-md-12 col-lg-12 col-xl-12">
80 <div class=
"alert alert-danger" role=
"alert">
81 <h3 style=
"word-wrap: break-word;" class=
"alert-heading">
82 {{ _(
"Job has been aborted") }}
85 {{ _(
"This build job is in an aborted state, because the build process crashed unexpectedly.") }}
86 {{ _(
"In most cases, there is no log file and you must figure out the issue on your own.") }}
89 {{ _(
"The error code is:") }}
91 {% if job.aborted_state == -
11 %}
92 SEGV - {{ _(
"Segmentation violation") }}
94 {{ job.aborted_state }} - {{ _(
"Unknown") }}
98 {% if current_user and current_user.is_admin() %}
100 {{ _(
"You may resubmit the job to try again:") }}
101 <a href=
"/job/{{ job.uuid }}/schedule?type=rebuild">{{ _(
"Re-submit build") }}
</a>
110 <div class=
"col-12 col-sm-12 col-md-6 col-lg-6 col-xl-6">
111 <h3 class=
"text-center">{{ _(
"General") }}
</h3>
112 <div class=
"table-responsive">
113 <table class=
"table table-striped table-hover">
121 {{ _(
"#%s in the build queue") % job.rank }}
130 {{ friendly_time(job.duration) }}
140 <a href=
"/builder/{{ job.builder.name }}">{{ job.builder.name }}
</a>
142 <span class=
"text-muted">{{ _(
"No builder assigned.") }}
</span>
151 {{ format_date(job.time_created, full_format=True) }}
154 {% if job.time_started %}
160 {{ format_date(job.time_started, full_format=True) }}
164 {% if job.time_finished %}
170 {{ format_date(job.time_finished, full_format=True) }}
179 <div class=
"col-12 col-sm-12 col-md-6 col-lg-6 col-xl-6">
180 <h3 class=
"text-center">{{ _(
"Build logs") }}
</h3>
181 {% if job.logfiles %}
182 {% module LogFilesTable(job, job.logfiles) %}
184 <p class=
"muted">{{ _(
"No logs available, yet.") }}
</p>
187 {% if job.buildroot %}
188 <p class=
"text-center">
189 <a href=
"/job/{{ job.uuid }}/buildroot">{{ _(
"Buildroot") }}
</a>
190 ({{ _(
"%s package",
"%s packages", len(job.buildroot)) % len(job.buildroot) }})
196 {% if len(job)
> 0 %}
198 <div class=
"col-12 col-sm-12 col-md-12 col-lg-12 col-xl-12">
199 <h3 style=
"word-wrap: break-word;">
200 {{ _(
"Package files") }}
201 <small>({{ len(job) }})
</small>
204 <div class=
"col-12 col-sm-12 col-md-12 col-lg-12 col-xl-12">
205 {% module PackagesTable(job, job) %}
212 <div class=
"col-12 col-sm-12 col-md-12 col-lg-12 col-xl-12">
213 <h3 style=
"word-wrap: break-word;">
217 <div class=
"col-12 col-sm-12 col-md-12 col-lg-12 col-xl-12">
218 {% module Log(log) %}