summary refs log tree commit diff
path: root/lib/jitterbug
diff options
context:
space:
mode:
authorJonathan "Duke" Leto <jonathan@leto.net>2011-01-05 13:09:13 -0800
committerJonathan "Duke" Leto <jonathan@leto.net>2011-01-05 13:09:13 -0800
commitdb9fa04c149bb99f43786aab25f4513c547786bc (patch)
treed1d8db609453470c99104258b85ad75155b8fbfb /lib/jitterbug
parentProperly bubble up errors from rmtree (diff)
downloadjitterbug-db9fa04c149bb99f43786aab25f4513c547786bc.tar.gz
Attempt to avoid a race condition and emit more debug info
Diffstat (limited to 'lib/jitterbug')
-rw-r--r--lib/jitterbug/Builder.pm11
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/jitterbug/Builder.pm b/lib/jitterbug/Builder.pm
index 1dbed73..6442e48 100644
--- a/lib/jitterbug/Builder.pm
+++ b/lib/jitterbug/Builder.pm
@@ -56,6 +56,7 @@ sub build {
     my @tasks = $self->{'schema'}->resultset('Task')->all();
 
     while (1) {
+        debug("Found " . scalar(@tasks) . " tasks");
         foreach my $task (@tasks) {
             $task ? $self->run_task($task) : $self->sleep;
         }
@@ -99,15 +100,21 @@ sub run_task {
     rmtree($build_dir, { error => \my $err } );
     warn @$err if @$err;
 
+    $self->sleep(1); # avoid race conditions
+
     my $repo    = $task->project->url . '.git';
     my $r       = Git::Repository->create( clone => $repo => $build_dir );
 
     debug("Checking out " . $task->commit->sha256 . " from $repo into $build_dir\n");
     $r->run( 'checkout', $task->commit->sha256 );
 
-    my $builder = $conf->{'jitterbug'}{'build_process'}{'builder'};
-    my $res     = `$builder $build_dir $report_path`;
+    my $builder         = $conf->{'jitterbug'}{'build_process'}{'builder'};
+
+    my $builder_command = "$builder $build_dir $report_path";
+    debug("Going to run builder : $builder_command");
 
+    my $res             = `$builder_command`;
+    debug($res);
 
     $desc->{'build'}{'end_time'} = time();