summaryrefslogtreecommitdiff
path: root/lib/jitterbug.pm
diff options
context:
space:
mode:
authorfranck cuny <franck@lumberjaph.net>2011-02-13 14:15:23 +0100
committerfranck cuny <franck@lumberjaph.net>2011-02-13 14:15:23 +0100
commit412587ddac4ba483d06bef9a8a89c07b4d3cf44b (patch)
tree3b58b44657d4e3c2817228a7984f2436e90f1244 /lib/jitterbug.pm
parentMerge branch 'refactor_builder' (diff)
parentupdate templates to show informations about running tasks (diff)
downloadjitterbug-412587ddac4ba483d06bef9a8a89c07b4d3cf44b.tar.gz
resolve merge conflict
Diffstat (limited to '')
-rw-r--r--lib/jitterbug.pm32
1 files changed, 29 insertions, 3 deletions
diff --git a/lib/jitterbug.pm b/lib/jitterbug.pm
index c876cb6..1bf3aab 100644
--- a/lib/jitterbug.pm
+++ b/lib/jitterbug.pm
@@ -9,9 +9,17 @@ our $VERSION = '0.1';
load_app 'jitterbug::Hook', prefix => '/hook';
load_app 'jitterbug::Project', prefix => '/project';
load_app 'jitterbug::WebService', prefix => '/api';
-#load_app 'jitterbug::Task', prefix => '/task';
+load_app 'jitterbug::Task', prefix => '/task';
get '/' => sub {
+ my $projects = _get_projects();
+ my ( $builds, $runnings ) = _get_builds();
+
+ template 'index',
+ { projects => $projects, builds => $builds, runnings => $runnings };
+};
+
+sub _get_projects {
my @projects = ();
@@ -41,7 +49,25 @@ get '/' => sub {
sort { $b->{last_build}->{timestamp} cmp $a->{last_build}->{timestamp} }
@projects;
- template 'index', {projects => \@projects};
-};
+ return \@projects;
+}
+
+sub _get_builds {
+
+ my @builds = ();
+ my @runnings = ();
+
+ my $builds = schema->resultset('Task')->search();
+ while ( my $build = $builds->next ) {
+ my $build_desc = {
+ project => $build->project->name,
+ id => $build->id,
+ running => $build->running,
+ };
+ $build->running ? push @runnings, $build_desc : push @builds,
+ $build_desc;
+ }
+ return ( \@builds, \@runnings );
+}
true;