about summary refs log tree commit diff
path: root/lib/jitterbug/Builder.pm
diff options
context:
space:
mode:
authorJonathan "Duke" Leto <jonathan@leto.net>2011-05-23 17:01:32 -0700
committerJonathan "Duke" Leto <jonathan@leto.net>2011-05-23 17:01:32 -0700
commit6a46d858d3485ac1100cde4b591dd1b578c9b5de (patch)
tree718285a3710567b6d30c0296d1ab4fe8a2f8e32f /lib/jitterbug/Builder.pm
parentFactor out result parsing to another function (diff)
downloadjitterbug-6a46d858d3485ac1100cde4b591dd1b578c9b5de.tar.gz
Factor out the actual build for each task into another function
Diffstat (limited to '')
-rw-r--r--lib/jitterbug/Builder.pm39
1 files changed, 22 insertions, 17 deletions
diff --git a/lib/jitterbug/Builder.pm b/lib/jitterbug/Builder.pm
index fe820c3..c69c675 100644
--- a/lib/jitterbug/Builder.pm
+++ b/lib/jitterbug/Builder.pm
@@ -125,24 +125,9 @@ sub _prepare_git_repo {
     chdir $pwd;
 }
 
-sub run_task {
-    my ($self,$task)   = @_;
-
-    my $desc    = JSON::decode_json( $task->commit->content );
-    my $conf    = $self->{'conf'};
+sub build_task {
+    my ($self, $conf, $project, $task, $report_path) = @_;
     my $buildconf = $conf->{'jitterbug'}{'build_process'};
-    my $project = $task->project;
-
-    my $dt = DateTime->now();
-    $task->update({started_when => $dt});
-    $desc->{'build'}{'start_time'} = $dt->epoch;
-    debug("Build Start");
-
-    my $report_path = dir(
-        $conf->{'jitterbug'}{'reports'}{'dir'},
-        $project->name,
-        $task->commit->sha256,
-    );
     my $dir = $conf->{'jitterbug'}{'build'}{'dir'};
     mkdir $dir unless -d $dir;
 
@@ -166,6 +151,26 @@ sub run_task {
     debug("Going to run builder : $builder_command");
     my $res             = `$builder_command`;
     debug($res);
+}
+
+sub run_task {
+    my ($self,$task)   = @_;
+
+    my $desc    = JSON::decode_json( $task->commit->content );
+    my $conf    = $self->{'conf'};
+    my $project = $task->project;
+    my $report_path = dir(
+        $conf->{'jitterbug'}{'reports'}{'dir'},
+        $project->name,
+        $task->commit->sha256,
+    );
+
+    my $dt = DateTime->now();
+    $task->update({started_when => $dt});
+    $desc->{'build'}{'start_time'} = $dt->epoch;
+    debug("Build Start");
+
+    $self->build_task($conf, $project, $task, $report_path);
 
     $desc->{'build'}{'end_time'} = time();