diff --git a/src/lib/Hydra/Controller/Build.pm b/src/lib/Hydra/Controller/Build.pm index fc07be6f..e72a7a70 100644 --- a/src/lib/Hydra/Controller/Build.pm +++ b/src/lib/Hydra/Controller/Build.pm @@ -385,4 +385,28 @@ sub add_to_release : Chained('build') PathPart('add-to-release') Args(0) { } +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'))); +} + + 1; diff --git a/src/lib/Hydra/Controller/Root.pm b/src/lib/Hydra/Controller/Root.pm index e1e1cc86..d2cd6551 100644 --- a/src/lib/Hydra/Controller/Root.pm +++ b/src/lib/Hydra/Controller/Root.pm @@ -60,6 +60,7 @@ sub queue :Local { $c->stash->{template} = 'queue.tt'; $c->stash->{queue} = [$c->model('DB::Builds')->search( {finished => 0}, {join => 'schedulingInfo', order_by => ["priority DESC", "timestamp"]})]; + $c->stash->{flashMsg} = $c->flash->{buildMsg}; } diff --git a/src/root/build.tt b/src/root/build.tt index 7318e480..09cd78fa 100644 --- a/src/root/build.tt +++ b/src/root/build.tt @@ -211,7 +211,6 @@ [% END %] - [% IF c.user_exists && available %]
[% END %] +[% IF c.user_exists %] + +[% END %] [% IF build.buildproducts %] diff --git a/src/root/clone-build.tt b/src/root/clone-build.tt new file mode 100644 index 00000000..560c9634 --- /dev/null +++ b/src/root/clone-build.tt @@ -0,0 +1,48 @@ +[% WRAPPER layout.tt title="Clone Build" %] +[% PROCESS common.tt %] +[% USE HTML %] +[% edit=1 %] + +Cloning allows you to perform a build with modified inputs.
+ + + +[% END %] diff --git a/src/root/project.tt b/src/root/project.tt index 2980052d..2b36cecf 100644 --- a/src/root/project.tt +++ b/src/root/project.tt @@ -95,7 +95,7 @@ [% END %] -[Create a new jobset] +[% flashMsg %]
+[% END %] + [% IF queue.size == 0 %]The queue is empty.