diff options
author | Jonathan "Duke" Leto <jonathan@leto.net> | 2011-01-11 10:47:35 -0800 |
---|---|---|
committer | Jonathan "Duke" Leto <jonathan@leto.net> | 2011-01-11 10:47:35 -0800 |
commit | 523d03621c762da8026dcadf3b8e52dd8c66b9d0 (patch) | |
tree | 01eb0ccfae9d6c311733dc613db436fc86f65a80 | |
parent | Add the ability to CC an email when builds fail (diff) | |
download | jitterbug-523d03621c762da8026dcadf3b8e52dd8c66b9d0.tar.gz |
Attempt to fix the mangled build failure email bug
Diffstat (limited to '')
-rw-r--r-- | lib/jitterbug/Builder.pm | 18 | ||||
-rwxr-xr-x | scripts/build-failed.sh | 7 |
2 files changed, 10 insertions, 15 deletions
diff --git a/lib/jitterbug/Builder.pm b/lib/jitterbug/Builder.pm index 1bdb8fa..32bc51c 100644 --- a/lib/jitterbug/Builder.pm +++ b/lib/jitterbug/Builder.pm @@ -134,15 +134,15 @@ sub run_task { if ( !$result || ($result && $result !~ /PASS/ )) { # mail author of the commit $result = "FAIL"; - my $message = $desc->{'message'}; - my $commiter = $desc->{'author'}{'email'}; - my $output = "Build failed"; - my $sha = $desc->{'id'}; - my $on_failure = - $conf->{'jitterbug'}{'build_process'}{'on_failure'}; - my $on_failure_email = - $conf->{'jitterbug'}{'build_process'}{'on_failure_email'}; - my $failure_cmd = "$on_failure $commiter $message $output $sha $on_failure_email"; + my $message = $desc->{'message'}; + my $commiter = $desc->{'author'}{'email'}; + my $output = "Build failed"; + my $sha = $desc->{'id'}; + my $on_failure = $conf->{'jitterbug'}{'build_process'}{'on_failure'}; + my $on_failure_email = $conf->{'jitterbug'}{'build_process'}{'on_failure_email'}; + + $message =~ s/'/\\'/g; $commiter =~ s/'/\\'/g; $output =~ s/'/\\'/g; + my $failure_cmd = qq{$on_failure '$commiter' '$message' '$output' $sha $on_failure_email}; debug("Running failure command: $failure_cmd"); `$failure_cmd`; } diff --git a/scripts/build-failed.sh b/scripts/build-failed.sh index 644e35f..1be5cd2 100755 --- a/scripts/build-failed.sh +++ b/scripts/build-failed.sh @@ -4,9 +4,4 @@ OUTPUT=$3 SHA=$4 CC_EMAIL=$5 -echo " -Message: -$MESSAGE - -$OUTPUT -" | mail -c "$CC_EMAIL" -s "[jitterbug] BUILD FAILED $SHA" $COMMITER +echo "Message:\n$MESSAGE\nTest Output:\n$OUTPUT\n" | mail -c "$CC_EMAIL" -s "[jitterbug] BUILD FAILED $SHA" $COMMITER |