* UI for cloning builds (not functional yet).
[?]
Oct 26, 2009, 2:30 PM
WRIU3S5EO3RB3IM5PUDNHLOOMUPD5UKWNUL4YMAKD3C6O4KELJCACDependencies
- [2]
Z6MDQIGO* A quick (non-Web 2.0) interface to manually add builds to a release. - [3]
J5UVLXOK* Start of a basic Catalyst web interface. - [4]
P5X4P6VK* Renaming "release sets" to "views" (not finished yet). Having - [5]
SZZ3PFYF - [6]
W6DC6K4I* Happy Javascript hacking. - [7]
TW5ZQX5Z* Move up the build products in the builds page, since they're more - [8]
ODNCGFQ5* Improved the navigation bar: don't include all projects (since that - [9]
KRVD4EW7* Only non-garbage collected builds can be added to a release. - [10]
WHAFVCEI - [11]
HJLYC753* Adding input value alternatives. - [12]
NDL67SQT* XHTML validity. - [13]
L2E6EVE2* Merged the Build and Job tables. - [14]
GCHNNFZP - [*]
LBNVQXUB* Build the /build stuff in a separate controller. - [*]
FPK5LF53* Put the project-related actions in a separate controller. Put the - [*]
JLDUSNUO* Unify rendering of finished and scheduled builds. - [*]
JFZNAYJX* Showing releases. - [*]
D5QIOJGP* Move everything up one directory. - [*]
7YBYT2LQ - [*]
TP3PFR5K
Change contents
- edit in src/lib/Hydra/Controller/Build.pm at line 385
}sub clone : Chained('build') PathPart('clone') Args(0) {my ($self, $c) = @_;my $build = $c->stash->{build};requireProjectOwner($c, $build->project);$c->stash->{template} = 'clone-build.tt';}sub clone_submit : Chained('build') PathPart('clone/submit') Args(0) {my ($self, $c) = @_;my $build = $c->stash->{build};requireProjectOwner($c, $build->project);$c->flash->{buildMsg} = "Build XXX added to the queue.";$c->res->redirect($c->uri_for($c->controller('Root')->action_for('queue'))); - edit in src/lib/Hydra/Controller/Root.pm at line 63
$c->stash->{flashMsg} = $c->flash->{buildMsg}; - edit in src/root/build.tt at line 213
- edit in src/root/build.tt at line 221
[% IF c.user_exists %]<p>[<a href="[% c.uri_for('/build' build.id 'clone') %]">Clone this build</a>]</p>[% END %] - file addition: clone-build.tt[20.1486]
[% WRAPPER layout.tt title="Clone Build" %][% PROCESS common.tt %][% USE HTML %][% edit=1 %]<h1>Clone Build</h1><p>Cloning allows you to perform a build with modified inputs.</p><form action="[% c.uri_for('/build' build.id 'clone' 'submit') %]" method="post"><h2>Nix expression</h2><p>Evaluate job <tt><input type="text" class="string"name="jobname" [% HTML.attributes(value => build.job.name) %]/></tt> in Nix expression <tt><input type="text" class="string"name="nixexprpath" [% HTML.attributes(value => build.nixexprpath) %]/></tt> in input <tt><input type="text" class="string"name="nixexprinput" [% HTML.attributes(value => build.nixexprinput)%] /></tt>.</p><h2>Build inputs</h2><table class="tablesorter"><thead><tr><th>Name</th><th>Type</th><th>Value</th></tr></thead><tbody>[% FOREACH input IN build.inputs -%]<tr><td><tt>[% input.name %]</tt></td><td>[% INCLUDE renderSelection curValue=input.type param="input-$input.name-type" options=inputTypes %]</td><td><tt><input type="text" class="string" name="input-[% input.name %]-value"[% HTML.attributes(value => input.value || input.uri || input.dependency.id) %] /></tt></td></tr>[% END -%]</tbody></table><p><button type="submit"><img alt="Add" src="/static/images/success.gif" />Add to queue</button></p></form>[% END %] - replacement in src/root/project.tt at line 98
<a href="[% c.uri_for(c.controller('Project').action_for('create_jobset'), [project.name]) %]">[Create a new jobset]</a><p><a href="[% c.uri_for(c.controller('Project').action_for('create_jobset'), [project.name]) %]">[Create a new jobset]</a></p> - edit in src/root/queue.tt at line 5[22.92][22.92]
[% IF flashMsg %]<p class="error">[% flashMsg %]</p>[% END %]