]> git.ipfire.org Git - people/jschlag/pbs.git/blob - data/templates/builder-detail.html
Redesign builders pages.
[people/jschlag/pbs.git] / data / templates / builder-detail.html
1 {% extends "base.html" %}
2
3 {% block title %}{{ _("Builder") }}: {{ builder.name }}{% end block %}
4
5 {% block body %}
6 <ul class="breadcrumb">
7 <li>
8 <a href="/">{{ _("Home") }}</a>
9 <span class="divider">/</span>
10 </li>
11 <li>
12 <a href="/builders">{{ _("Builders") }}</a>
13 <span class="divider">/</span>
14 </li>
15 <li class="active">
16 <a href="/builder/{{ builder.name }}">{{ builder.name }}</a>
17 </li>
18 </ul>
19
20 <div class="page-header">
21 <h2>{{ _("Builder") }}: {{ builder.name }}</h2>
22 </div>
23
24 {% if builder.overload %}
25 <div class="alert alert-block alert-warning">
26 <h4 class="alert-heading">{{ _("Warning") }}!</h4>
27 {{ _("This builder is overloaded.") }}
28 {{ _("That means it will not take any additional jobs although it has not reached its threshold of running jobs, yet.") }}
29 {{ _("New jobs will be started automatically after the load decreased.") }}
30 </div>
31 {% end %}
32
33 <div class="row">
34 <div class="span5">
35 <table class="table table-striped table-hover">
36 <tbody>
37 <tr>
38 <td>{{ _("State") }}</td>
39 <td>
40 {% if builder.status == "enabled" %}
41 {{ _("Enabled") }}
42 {% elif builder.status == "disabled" %}
43 {{ _("Disabled") }}
44 {% elif builder.status == "deleted" %}
45 {{ _("Deleted") }}
46 {% else %}
47 {{ _("Unknown status: %s") % builder.status }}
48 {% end %}
49 </td>
50 </tr>
51 <tr>
52 <td>{{ _("Parallel builds") }}</td>
53 <td>{{ _("One job only.", "Up to %(num)s jobs.", builder.max_jobs) % { "num" : builder.max_jobs } }}</td>
54 </tr>
55 <tr>
56 <td>{{ _("This host builds") }}</td>
57 <td>
58 <ul>
59 {% for type in builder.build_types %}
60 <li>
61 {% if type == "release" %}
62 {{ _("Release builds") }}
63 {% elif type == "scratch" %}
64 {{ _("Scratch builds") }}
65 {% elif type == "test" %}
66 {{ _("Test builds") }}
67 {% end %}
68 </li>
69 {% end %}
70 </ul>
71 </td>
72 </tr>
73 </tbody>
74 </table>
75
76 {% if builder.description %}
77 <h2>{{ _("Remarks") }}</h2>
78 <p>
79 {% module Text(builder.description) %}
80 </p>
81 {% end %}
82 </div>
83
84 <div class="span7">
85 <table class="table table-striped table-hover">
86 <tbody>
87 <tr>
88 <td>{{ _("Pakfire version") }}</td>
89 <td>
90 {{ builder.pakfire_version or _("N/A") }}
91 </td>
92 </tr>
93 <tr>
94 <td>{{ _("Supported architectures") }}</td>
95 <td>
96 {{ locale.list([a.name for a in builder.get_arches() ]) }}
97
98 {% if builder.disabled_arches %}
99 ({{ _("disabled: %s") % locale.list([a.name for a in builder.disabled_arches]) }})
100 {% end %}
101 </td>
102 </tr>
103 <tr>
104 <td>{{ _("CPU model") }}</td>
105 <td>
106 {{ builder.cpu_model or _("Unknown") }}
107 </td>
108 </tr>
109 <tr>
110 <td>{{ _("CPU count") }}</td>
111 <td>{{ builder.cpu_count }}</td>
112 </tr>
113 <tr>
114 <td>{{ _("Memory") }}</td>
115 <td>{{ format_size(builder.memory) }}</td>
116 </tr>
117 <tr>
118 <td>{{ _("Load average") }}</td>
119 <td>
120 {{ builder.loadavg or _("N/A") }}
121 {% if builder.overload %}
122 <span class="label label-important">{{ _("Overload") }}</span>
123 {% end %}
124 </td>
125 </tr>
126 <tr>
127 <td>{{ _("Free disk space") }}</td>
128 <td>{{ format_size(builder.free_space * 1024**2) }}</td>
129 </tr>
130
131 <tr>
132 <td>{{ _("Host key") }}</td>
133 <td>
134 {{ builder.host_key_id or _("N/A") }}
135 </td>
136 </tr>
137 </tbody>
138 </table>
139 </div>
140 </div>
141
142 {% if current_user and current_user.has_perm("maintain_builders") %}
143 <hr>
144
145 <div class="btn-toolbar ac">
146 {% if builder.enabled %}
147 <a class="btn btn-danger" href="/builder/{{ builder.name }}/disable">
148 {{ _("Disable builder") }}
149 </a>
150 {% else %}
151 <a class="btn btn-success" href="/builder/{{ builder.name }}/enable">
152 {{ _("Enable builder") }}
153 </a>
154 {% end %}
155
156 <a class="btn" href="/builder/{{ builder.name }}/edit">
157 <i class="icon-edit"></i>
158 {{ _("Edit builder") }}
159 </a>
160
161 {% if not builder.enabled %}
162 <a class="btn" href="/builder/{{ builder.name }}/renew">
163 <i class="icon-refresh"></i>
164 {{ _("Renew passphrase") }}
165 </a>
166 {% end %}
167
168 <a class="btn" href="/builder/{{ builder.name }}/delete">
169 <i class="icon-trash"></i>
170 {{ _("Delete builder") }}
171 </a>
172 </div>
173 {% end %}
174
175 <hr>
176
177 <h3>{{ _("Log") }}</h3>
178 {% module Log(builder.get_history(limit=5)) %}
179 {% end block %}