Allow manually scheduling disabled jobsets for evaluation

Signed-off-by: Shea Levy <shea@shealevy.com>
This commit is contained in:
Shea Levy 2013-05-02 11:21:43 -04:00
parent 3003bb1c99
commit b8ea428bb1
2 changed files with 3 additions and 2 deletions

View file

@ -291,11 +291,12 @@ sub push : Chained('api') PathPart('push') Args(0) {
$c->{stash}->{json}->{jobsetsTriggered} = []; $c->{stash}->{json}->{jobsetsTriggered} = [];
my $force = exists $c->request->query_params->{force};
my @jobsets = split /,/, ($c->request->query_params->{jobsets} // ""); my @jobsets = split /,/, ($c->request->query_params->{jobsets} // "");
foreach my $s (@jobsets) { foreach my $s (@jobsets) {
my ($p, $j) = parseJobsetName($s); my ($p, $j) = parseJobsetName($s);
my $jobset = $c->model('DB::Jobsets')->find($p, $j); my $jobset = $c->model('DB::Jobsets')->find($p, $j);
next unless defined $jobset && $jobset->project->enabled && $jobset->enabled; next unless defined $jobset && ($force || ($jobset->project->enabled && $jobset->enabled));
triggerJobset($self, $c, $jobset); triggerJobset($self, $c, $jobset);
} }

View file

@ -83,7 +83,7 @@
'Are you sure you want to force evaluation of this jobset?', 'Are you sure you want to force evaluation of this jobset?',
function(c) { function(c) {
if (!c) return; if (!c) return;
$.post("[% c.uri_for('/api/push', { jobsets = project.name _ ':' _ jobset.name }) %]") $.post("[% c.uri_for('/api/push', { jobsets = project.name _ ':' _ jobset.name, force = "1" }) %]")
.done(function(data) { .done(function(data) {
if (data.error) if (data.error)
bootbox.alert("Unable to schedule the jobset for evaluation: " + data.error); bootbox.alert("Unable to schedule the jobset for evaluation: " + data.error);