44422aa666cfcd53e7911d6e9be5550ea935b089
[blender-buildbot.git] / templates / forms.html
1
2 {% macro cancel_pending_build(cancel_url, authz, short=False, id='all') %}
3   <form method="post" name="cancel" action="{{ cancel_url }}" class='form-horizontal cancelbuild'
4              {{ 'style="display:inline"' if short else '' }}>
5     {% if not short %}
6       {% if id == 'all' %}
7         <p>To cancel all builds, push the 'Cancel' button</p>
8         <p>To cancel individual builds, click the 'Cancel' buttons above.</p>
9       {% else %}
10         <p>To cancel this build, push the 'Cancel' button</p>
11       {% endif %}
12     {% endif %}
13     <input type="hidden" name="id" value="{{ id }}" />
14     <input class="btn btn-default btn-success btn-squishy" type="submit" value="Cancel" />
15   </form>
16 {% endmacro %}
17
18 {% macro stop_change_builds(stopchange_url, changenum, authz) %}
19   {% if not changenum  %}
20     <form method="post" action="{{ stopchange_url }}" class='form-horizontal stopchange'>
21       {% if changenum %}
22         <p>To cancel all builds for this change, push the 'Cancel' button</p>
23       {% else %}
24         <p>To cancel builds for this builder for a given change, fill out the
25           following field and push the 'Cancel' button</p>
26       {% endif %}
27
28       {% if changenum %}
29         <input type="hidden" name="change" value="{{ changenum }}" />
30       {% else %}
31         <div class="row">
32           <span class="label">Change #:</span>
33           <input type="text" name="change"/>
34         </div>
35       {% endif %}
36       <input class="btn btn-default btn-success btn-squishy" type="submit" value="Cancel" />
37     </form>
38   {% endif %}
39 {% endmacro %}
40
41 {% macro stop_build(stop_url, authz, on_all=False, on_selected=False, builders=[], short=False, label="Build") %}
42   {% if not short %}
43     <form method="post" name="stop_build" action="{{ stop_url }}" class='form-horizontal stopbuild'
44                {{ 'style="display:inline"' if short else '' }}>
45       {% if not short %}
46         {% if on_all %}
47           <p>To stop all builds, fill out the following field and
48           push the <i>Stop {{ label }}</i> button</p>
49         {% elif on_selected %}
50           <p>To stop selected builds, select the builders, fill out the
51           following field and push the <i>Stop {{ label }}</i> button</p>
52           <table>
53           {% for b in builders %}
54             <tr>
55               <td align="center"><input type="checkbox" name="selected" value="{{ b.name }}"></td>
56               <td class="box"><a href="{{ b.link }}">{{ b.name|e }}</a></td>
57             </tr>
58           {% endfor %}
59           </table>
60
61         {% else %}
62           <p>To stop this build, fill out the following field and
63           push the <i>Stop {{ label }}</i> button</p>
64         {% endif %}
65       {% endif %}
66
67       {% if not short %}
68         <div class="row">
69           <span class="label">Reason:</span>
70           <input type="text" name="comments"/>
71         </div>
72       {% endif %}
73
74       <input class="btn btn-default btn-success btn-squishy" type="submit" value="Stop {{ label }}" />
75     </form>
76   {% endif %}
77 {% endmacro %}
78
79 {% macro cancel_build(cancel_url, authz, on_all=False, on_selected=False, builders=[], short=False, label="Build") %}
80   {% if not short %}
81     <form method="post" name="cancel_build" action="{{ cancel_url }}" class='form-horizontal cancelbuild'
82                {{ 'style="display:inline"' if short else '' }}>
83       {% if not short %}
84         {% if on_all %}
85           <p>To cancel all pending builds, fill out the following field and
86           push the <i>Cancel {{ label }}</i> button</p>
87         {% elif on_selected %}
88           <p>To cancel selected pending builds, select the builders, fill out the
89           following field and push the <i>Cancel {{ label }}</i> button</p>
90           <table>
91           {% for b in builders %}
92             <tr>
93               <td align="center"><input type="checkbox" name="selected" value="{{ b.name }}"></td>
94               <td class="box"><a href="{{ b.link }}">{{ b.name|e }}</a></td>
95             </tr>
96           {% endfor %}
97           </table>
98
99         {% else %}
100           <p>To cancel this pending build, fill out the following field and
101           push the <i>Cancel {{ label }}</i> button</p>
102         {% endif %}
103       {% endif %}
104
105       {% if not short %}
106         <div class="row">
107           <span class="label">Reason:</span>
108           <input type="text" name="comments"/>
109         </div>
110       {% endif %}
111
112       <input class="btn btn-default btn-success btn-squishy" type="submit" value="Cancel {{ label }}" />
113     </form>
114   {% endif %}
115 {% endmacro %}
116
117 {% macro force_build_scheduler_parameter(f, authz, request, sch, default_props) %}
118     {% if f and not f.hide and (f.fullName != "username" or not authz.authenticated(request)) %}
119     <div class="row{% for subtype in f.type %} force-{{subtype}}{%endfor%}"{% if f.name %} id="force-{{sch.name}}-{{f.fullName}}"{% endif %}>
120     {% if 'text' in f.type or 'int' in f.type %}
121        <span class="label">{{f.label}}</span>
122        <input type='text' size='{{f.size}}' name='{{f.fullName}}' value='{{default_props[sch.name+"."+f.fullName]}}' />
123     {% elif 'bool' in f.type%}
124        <input type='checkbox' name='checkbox' value='{{f.fullName}}' {{default_props[sch.name+"."+f.fullName]}} />
125        <span class="label">{{f.label}}</span>
126     {% elif 'textarea' in f.type %}
127        <span class="label">{{f.label}}</span>
128        <textarea name='{{f.fullName}}' rows={{f.rows}} cols={{f.cols}}>{{default_props[sch.name+"."+f.fullName]}}</textarea>
129     {% elif 'list' in f.type %}
130        <span class="label">{{f.label}}</span>
131        <span class="select">
132        <select name='{{f.fullName}}' {{ f.multiple and "multiple" or ""}}>
133          {% for c in default_props[sch.name+"."+f.fullName+".choices"] %}
134            <option {{(c in default_props[sch.name+"."+f.fullName]) and "selected" or ""}}>{{c}}</option>
135          {% endfor %}
136        </select>
137        </span>
138     {% elif 'nested' in f.type %}
139       {% if f.label %}<span class="label">{{f.label}}</span>{% endif %}
140       {% for subfield in f.fields %}
141         {{ force_build_scheduler_parameter(subfield, authz, request, sch, default_props) }}
142       {% endfor %}
143     {% endif %}
144     </div>
145   {% endif %}
146 {% endmacro %}
147
148 {% macro force_build_one_scheduler(force_url, authz, request, on_all, on_selected, builders, sch, default_props) %}
149  <form method="post" name="force_build" action="{{ force_url }}" class="command_forcebuild">
150
151   <h3>{{ sch.name|e }}</h3>
152   {% if on_all %}
153      <p>To force a build on <strong>all Builders</strong>, fill out the following fields
154           and push the 'Force Build' button</p>
155   {% elif on_selected %}
156      <p>To force a build on <strong>certain Builders</strong>, select the
157         builders, fill out the following fields and push the
158         'Force Build' button</p>
159
160      <table>
161      {% for b in builders %}
162      {% if b.name in sch.builderNames %}
163        <tr>
164          <td align="center"><input type="checkbox" name="selected" value="{{ b.name }}"></td>
165          <td class="box"><a href="{{ b.link }}">{{ b.name|e }}</a></td>
166        </tr>
167        {% endif %}
168      {% endfor %}
169      </table>
170
171   {% else %}
172      <p>To force a build, fill out the following fields and
173         push the 'Force Build' button</p>
174   {% endif %}
175   <input type='hidden' name='forcescheduler' value='{{sch.name}}' />
176   {% for f in sch.all_fields %}
177     {{ force_build_scheduler_parameter(f, authz, request, sch, default_props) }}
178   {% endfor %}
179
180   <input class="btn btn-default btn-success btn-squishy" type="submit" value="{{ sch.buttonName }}" />
181  </form>
182 {% endmacro %}
183 {% macro force_build(force_url, authz, request, on_all=False, on_selected=False, builders=[], force_schedulers={},default_props={}) %}
184   {% for name, sch in force_schedulers.items() | sort %}
185     {{ force_build_one_scheduler(force_url, authz, request, on_all, on_selected, builders, sch, default_props=default_props) }}
186   {% endfor %}
187
188 {% endmacro %}
189
190 {% macro graceful_shutdown(shutdown_url, authz) %}
191   <form method="post" action="{{ shutdown_url }}" class='form-horizontal graceful_shutdown'>
192
193   <p>To cause this slave to shut down gracefully when it is idle,
194     push the 'Graceful Shutdown' button</p>
195   <input class="btn btn-default btn-success btn-squishy" type="submit" value="Graceful Shutdown" />
196  </form>
197 {% endmacro %}
198
199 {% macro pause_slave(pause_url, authz, paused) %}
200   <form method="post" action="{{ pause_url }}" class='form-horizontal pause_slave'>
201
202   {% if paused %}
203     <p>To cause this slave to start running new builds again,
204       push the 'Unpause Slave' button</p>
205   {% else %}
206     <p>To cause this slave to stop running new builds,
207       push the 'Pause Slave' button</p>
208   {% endif %}
209
210   {% if paused %}
211       <input class="btn btn-default btn-success btn-squishy" type="submit" value="Unpause Slave" />
212   {% else %}
213       <input class="btn btn-default btn-success btn-squishy" type="submit" value="Pause Slave" />
214   {% endif %}
215  </form>
216 {% endmacro %}
217
218 {% macro clean_shutdown(shutdown_url, authz) %}
219   <form method="post" action="{{ shutdown_url }}" class='form-horizontal clean_shutdown'>
220   <p>To cause this master to shut down cleanly, push the 'Clean Shutdown' button.</p>
221   <p>No other builds will be started on this master, and the master will
222   stop once all current builds are finished.</p>
223
224   <input class="btn btn-default btn-success btn-squishy" type="submit" value="Clean Shutdown" />
225  </form>
226 {% endmacro %}
227
228 {% macro cancel_clean_shutdown(cancel_shutdown_url, authz) %}
229   <form method="post" action="{{ cancel_shutdown_url }}" class='form-horizontal cancel_clean_shutdown'>
230   <p>To cancel a previously initiated shutdown, push the 'Cancel Shutdown' button.</p>
231
232   <input class="btn btn-default btn-success btn-squishy" type="submit" value="Cancel Shutdown" />
233  </form>
234 {% endmacro %}
235
236 {% macro ping_builder(ping_url, authz) %}
237   <form method="post" action="{{ ping_url }}" class='form-horizontal ping_builder'>
238     <p>To ping the buildslave(s), push the 'Ping' button</p>
239     <input class="btn btn-default btn-success btn-squishy" type="submit" value="Ping Builder" />
240   </form>
241 {% endmacro %}
242
243 {% macro rebuild_build(rebuild_url, authz, ss) %}
244  <form method="post" action="{{ rebuild_url }}" class="form-horizontal rebuild">
245
246   {% if on_all %}
247      <p>To force a build on <strong>all Builders</strong>, fill out the following fields
248           and push the 'Force Build' button</p>
249   {% else %}
250      <p>To force a build, fill out the following fields and
251         push the 'Force Build' button</p>
252   {% endif %}
253    <div class="row">
254      <span class="label">Reason for re-running build:</span>
255      <input type='text' name='comments' />
256    </div>
257    <div class="row">
258      Rebuild using:
259      <select name="useSourcestamp">
260         <option value='exact' selected>Exact same revisions</option>
261         <option value='updated'>Same sourcestamps (ignoring 'got revision')</option>
262      </select>
263    </div>
264    <input class="btn btn-default btn-success btn-squishy" type="submit" value="Rebuild" />
265  </form>
266 {% endmacro %}
267
268 {% macro show_users(users_url, authz) %}
269   <form method="post" action="{{ users_url }}" class='form-horizontal show_users'>
270     <p>To show users, press the 'Show Users' button</p>
271
272     <input class="btn btn-default btn-success btn-squishy" type="submit" value="Show Users" />
273   </form>
274 {% endmacro %}