diff options
Diffstat (limited to 'src/main/java/hudson/plugins/shell/ShellWithStatus.java')
-rw-r--r-- | src/main/java/hudson/plugins/shell/ShellWithStatus.java | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/main/java/hudson/plugins/shell/ShellWithStatus.java b/src/main/java/hudson/plugins/shell/ShellWithStatus.java index baf171e..18ef51a 100644 --- a/src/main/java/hudson/plugins/shell/ShellWithStatus.java +++ b/src/main/java/hudson/plugins/shell/ShellWithStatus.java @@ -249,7 +249,26 @@ public class ShellWithStatus extends CommandInterpreter { e.printStackTrace(listener.fatalError(Messages.CommandInterpreter_CommandFailed())); r = -1; } - return r==0; + switch (r) { + case 0: + break; + case 121: + build.setResult(Result.UNSTABLE); + break; + case 122: + build.setResult(Result.FAILURE); + break; + case 123: + build.setResult(Result.NOT_BUILT); + break; + case 124: + build.setResult(Result.ABORTED); + break; + default: + build.setResult(Result.FAILURE); + break; + } + return r==0 || r==121; } finally { try { if(script!=null) |