* Disambiguate jobs by jobset name. I.e. jobs with the same name in

different jobsets are not considered the same job.
This commit is contained in:
Eelco Dolstra
2009-03-12 23:46:17 +00:00
parent a623ad157e
commit f2f586d842
25 changed files with 90 additions and 55 deletions

View File

@ -7,12 +7,19 @@ use Hydra::Helper::Nix;
use Hydra::Helper::CatalystUtils;
sub job : Chained('/project/project') PathPart('job') CaptureArgs(1) {
my ($self, $c, $jobName) = @_;
sub job : Chained('/') PathPart('job') CaptureArgs(3) {
my ($self, $c, $projectName, $jobsetName, $jobName) = @_;
# !!! cut&paste from Project::project.
my $project = $c->model('DB::Projects')->find($projectName)
or notFound($c, "Project $projectName doesn't exist.");
$c->stash->{curProject} = $project;
$c->stash->{jobset} = $project->jobsets->find({name => $jobsetName})
or notFound($c, "Jobset $jobsetName doesn't exist.");
$c->stash->{jobName} = $jobName;
# !!! nothing to do here yet, since we don't have a jobs table.
}
@ -26,7 +33,7 @@ sub index : Chained('job') PathPart('') Args(0) {
sub get_builds : Chained('job') PathPart('') CaptureArgs(0) {
my ($self, $c) = @_;
$c->stash->{allBuilds} =
$c->stash->{curProject}->builds->search({job => $c->stash->{jobName}});
$c->stash->{jobset}->builds->search({job => $c->stash->{jobName}});
$c->stash->{channelBaseName} =
$c->stash->{curProject}->name . "-" . $c->stash->{jobName};
}

View File

@ -10,8 +10,8 @@ use Hydra::Helper::CatalystUtils;
sub project : Chained('/') PathPart('project') CaptureArgs(1) {
my ($self, $c, $projectName) = @_;
my $project = $c->model('DB::Projects')->find($projectName);
notFound($c, "Project $projectName doesn't exist.") unless defined $project;
my $project = $c->model('DB::Projects')->find($projectName)
or notFound($c, "Project $projectName doesn't exist.");
$c->stash->{curProject} = $project;
}