1 {% extends
"base.html" %}
3 {% block title %}{{ _(
"Builder") }}: {{ builder.name }}{% end block %}
6 <ul class=
"breadcrumb">
8 <a href=
"/">{{ _(
"Home") }}
</a>
9 <span class=
"divider">/
</span>
12 <a href=
"/builders">{{ _(
"Builders") }}
</a>
13 <span class=
"divider">/
</span>
16 <a href=
"/builder/{{ builder.name }}">{{ builder.name }}
</a>
20 {% if builder.overload %}
21 <div class=
"alert alert-warning">
22 <strong>{{ _(
"Warning") }}
</strong>! {{ _(
"This builder is overloaded.") }}
23 {{ _(
"That means it will take no additional jobs although it has not reached its threshold.") }}
24 {{ _(
"If the load decreases new jobs will be added automatically.") }}
28 <div class=
"page-header">
29 <h1>{{ _(
"Builder") }}: {{ builder.name }}
</h1>
33 <div class=
"span4 offset1">
37 <td>{{ _(
"State") }}
</td>
39 {% if builder.status ==
"enabled" %}
41 {% elif builder.status ==
"disabled" %}
43 {% elif builder.status ==
"deleted" %}
46 {{ _(
"Unknown status: %s") % builder.status }}
51 <td>{{ _(
"Parallel builds") }}
</td>
52 <td>{{ _(
"One job only.",
"Up to %(num)s jobs.", builder.max_jobs) % {
"num" : builder.max_jobs } }}
</td>
55 <td>{{ _(
"This host builds") }}
</td>
58 {% for type in builder.build_types %}
60 {% if type ==
"release" %}
61 {{ _(
"Release builds") }}
62 {% elif type ==
"scratch" %}
63 {{ _(
"Scratch builds") }}
64 {% elif type ==
"test" %}
65 {{ _(
"Test builds") }}
75 {% if builder.description %}
76 <h2>{{ _(
"Remarks") }}
</h2>
78 {% module Text(builder.description) %}
87 <td>{{ _(
"Pakfire version") }}
</td>
89 {{ builder.pakfire_version or _(
"N/A") }}
93 <td>{{ _(
"Supported architectures") }}
</td>
95 {{ locale.list([a.name for a in builder.get_arches() ]) }}
97 {% if builder.disabled_arches %}
98 ({{ _(
"disabled: %s") % locale.list([a.name for a in builder.disabled_arches]) }})
103 <td>{{ _(
"CPU model") }}
</td>
105 {{ builder.cpu_model or _(
"Unknown") }}
109 <td>{{ _(
"CPU count") }}
</td>
110 <td>{{ builder.cpu_count }}
</td>
113 <td>{{ _(
"Memory") }}
</td>
114 <td>{{ format_size(builder.memory) }}
</td>
117 <td>{{ _(
"Load average") }}
</td>
119 {{ builder.loadavg or _(
"N/A") }}
120 {% if builder.overload %}
121 <span class=
"label label-important">{{ _(
"Overload") }}
</span>
126 <td>{{ _(
"Free disk space") }}
</td>
127 <td>{{ format_size(builder.free_space *
1024**
2) }}
</td>
131 <td>{{ _(
"Host key") }}
</td>
133 {{ builder.host_key_id or _(
"N/A") }}
141 {% if current_user and current_user.has_perm(
"maintain_builders") %}
143 <div class=
"span10 offset1">
144 <div class=
"btn-toolbar">
145 <div class=
"btn-group pull-right">
146 {% if builder.enabled %}
147 <a class=
"btn btn-danger" href=
"/builder/{{ builder.name }}/disable">
151 <a class=
"btn btn-success" href=
"/builder/{{ builder.name }}/enable">
156 <a class=
"btn dropdown-toggle" data-toggle=
"dropdown" href=
"#">
158 <span class=
"caret"></span>
160 <ul class=
"dropdown-menu">
162 <a href=
"/builder/{{ builder.name }}/edit">
163 <i class=
"icon-edit"></i>
164 {{ _(
"Edit settings") }}
168 {% if not builder.enabled %}
170 <a href=
"/builder/{{ builder.name }}/renew">
171 <i class=
"icon-refresh"></i>
172 {{ _(
"Renew passphrase") }}
177 <li class=
"divider"></li>
179 <a href=
"/builder/{{ builder.name }}/delete">
180 <i class=
"icon-trash"></i>
181 {{ _(
"Delete builder") }}
191 {% if builder.get_active_jobs() %}
193 <div class=
"span10 offset1">
194 <h2>{{ _(
"Currently running builds on this host") }}
</h2>
195 {% module JobsList(builder.get_active_jobs()) %}
201 <div class=
"span10 offset1">
202 <h2>{{ _(
"Log") }}
</h2>
203 {% module Log(builder.get_history(limit=
20)) %}