Merge branch 'custom-channels' of https://github.com/aszlig/hydra
This commit is contained in:
@ -190,7 +190,7 @@
|
||||
<td>[% IF cachedBuild; INCLUDE renderFullBuildLink build=cachedBuild; ELSE %]<em>unknown</em>[% END %]</td>
|
||||
</tr>
|
||||
[% END %]
|
||||
[% IF !isAggregate && build.finished; actualBuild = build.iscachedbuild ? cachedBuild : build %]
|
||||
[% IF (!isAggregate || !build.ischannel) && build.finished; actualBuild = build.iscachedbuild ? cachedBuild : build %]
|
||||
[% IF actualBuild %]
|
||||
<tr>
|
||||
<th>Duration:</th>
|
||||
@ -202,7 +202,7 @@
|
||||
<td>[% INCLUDE renderDateTime timestamp = build.stoptime; %]</td>
|
||||
</tr>
|
||||
[% END %]
|
||||
[% IF !isAggregate && buildLogExists(build) %]
|
||||
[% IF (!isAggregate || !build.ischannel) && buildLogExists(build) %]
|
||||
<tr>
|
||||
<th>Logfile:</th>
|
||||
<td>
|
||||
@ -217,7 +217,7 @@
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
[% IF build.buildproducts && !isAggregate %]
|
||||
[% IF build.ischannel || (build.buildproducts && !isAggregate) %]
|
||||
|
||||
<h3>Build products</h3>
|
||||
|
||||
|
@ -22,12 +22,13 @@ $ nix-env -i foo</pre>
|
||||
$ nix-channel --update
|
||||
$ nix-env -u '*'</pre>
|
||||
|
||||
[% IF genericChannel %]
|
||||
|
||||
<p>Alternatively, if you have associated the
|
||||
<tt>application/nix-package</tt> MIME type with the
|
||||
<tt>nix-install-package</tt> program in your web browser, you can
|
||||
install the package simply by clicking on the packages below.</p>
|
||||
|
||||
|
||||
<h2>Packages</h2>
|
||||
|
||||
<p>This channel contains the following packages.</p>
|
||||
@ -69,5 +70,17 @@ install the package simply by clicking on the packages below.</p>
|
||||
|
||||
</table>
|
||||
|
||||
[% ELSE %]
|
||||
[% PROCESS "product-list.tt" %]
|
||||
|
||||
<h2>Contents</h2>
|
||||
|
||||
[% INCLUDE renderProductList build=lastSuccessful %]
|
||||
|
||||
<p>Upgrades depend on the success/failure of the following constituents:</p>
|
||||
|
||||
[% INCLUDE renderBuildList builds=constituents %]
|
||||
|
||||
[% END %]
|
||||
|
||||
[% END %]
|
||||
|
34
src/root/jobset-channels-tab.tt
Normal file
34
src/root/jobset-channels-tab.tt
Normal file
@ -0,0 +1,34 @@
|
||||
[% PROCESS common.tt %]
|
||||
|
||||
[% IF channels.size == 0 %]
|
||||
|
||||
<div class="alert">There are no channels available.</div>
|
||||
|
||||
[% ELSE %]
|
||||
|
||||
[% evalIds = evals.keys.nsort.reverse %]
|
||||
<table class="table table-striped table-condensed table-header-rotated">
|
||||
<thead>
|
||||
<tr>
|
||||
<th style="width: 1em;">Channel</th>
|
||||
[% FOREACH eval IN evalIds %]
|
||||
<th class="rotate-45">
|
||||
<div><span>
|
||||
<a href="[% c.uri_for('/eval' eval) %]">[% INCLUDE renderRelativeDate timestamp=evals.$eval.timestamp %]</a>
|
||||
</span></div></th>
|
||||
[% END %]
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
[% FOREACH chan IN channels-%]
|
||||
<tr>
|
||||
<th><span><a href="[% c.uri_for('/channel/custom' project.name jobset.name chan) %]">[% chan %]</a></span></th>
|
||||
[% FOREACH eval IN evalIds %]
|
||||
<td>[% r = evals.$eval.builds.$chan; IF r.id %]<a href="[% c.uri_for('/build' r.id) %]">[% INCLUDE renderBuildStatusIcon size=16 build=r %]</a>[% END %]</td>
|
||||
[% END %]
|
||||
</tr>
|
||||
[% END %]
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
[% END %]
|
@ -59,7 +59,7 @@
|
||||
<tr>
|
||||
<th><span [% IF inactiveJobs.$j %]class="muted override-link"[% END %]>[% INCLUDE renderJobName project=project.name jobset=jobset.name job=j %]</span></th>
|
||||
[% FOREACH eval IN evalIds %]
|
||||
<td>[% r = evals.$eval.jobs.$j; IF r.id %]<a href="[% c.uri_for('/build' r.id) %]">[% INCLUDE renderBuildStatusIcon size=16 build=r %]</a>[% END %]</td>
|
||||
<td>[% r = evals.$eval.builds.$j; IF r.id %]<a href="[% c.uri_for('/build' r.id) %]">[% INCLUDE renderBuildStatusIcon size=16 build=r %]</a>[% END %]</td>
|
||||
[% END %]
|
||||
</tr>
|
||||
[% END %]
|
||||
|
@ -64,6 +64,7 @@
|
||||
<li><a href="#tabs-jobs" data-toggle="tab">Jobs</a></li>
|
||||
<li><a href="#tabs-configuration" data-toggle="tab">Configuration</a></li>
|
||||
<li><a href="#tabs-links" data-toggle="tab">Links</a></li>
|
||||
<li><a href="#tabs-channels" data-toggle="tab">Channels</a></li>
|
||||
</ul>
|
||||
|
||||
<div id="generic-tabs" class="tab-content">
|
||||
@ -165,6 +166,8 @@
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
[% INCLUDE makeLazyTab tabName="tabs-channels" uri=c.uri_for('/jobset' project.name jobset.name "channels-tab") %]
|
||||
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
@ -115,10 +115,9 @@
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
[% END %]
|
||||
|
||||
[% END %]
|
||||
|
||||
[% CASE "file" %]
|
||||
[% CASE ["file", "channel"] %]
|
||||
|
||||
<tr class="product">
|
||||
<td>
|
||||
@ -137,7 +136,13 @@
|
||||
[% CASE "binary-dist" %]
|
||||
<img src="[% c.uri_for("/static/images/binary-dist.png") %]" alt="Binary distribution" /> Binary distribution <tt>[% product.name %]</tt>
|
||||
[% CASE DEFAULT %]
|
||||
File <tt>[% product.name %]</tt> of type <tt>[% product.subtype %]</tt>
|
||||
[% IF product.type == "channel" %]
|
||||
<img src="[% c.uri_for("/static/images/channel.png") %]" alt="Channel" />
|
||||
Channel expression tarball <tt>[% product.name %]</tt>
|
||||
[% IF product.subtype != "-" %]for <tt>[% product.subtype %]</tt>[% END %]
|
||||
[% ELSE %]
|
||||
File <tt>[% product.name %]</tt> of type <tt>[% product.subtype %]</tt>
|
||||
[% END %]
|
||||
[% END %]
|
||||
</a>
|
||||
[% WRAPPER makePopover title="Details" classes="btn-mini" %]
|
||||
|
BIN
src/root/static/images/channel.png
Normal file
BIN
src/root/static/images/channel.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.6 KiB |
Reference in New Issue
Block a user