changeset 114:d5fe3d08be74

fail on exit code, rather than on messages in stderr
author Pavel.Sher
date Fri, 30 Jul 2010 20:03:51 +0400
parents 60d67a1e5502
children 1c7e94c0ad2f e8125034f6a9
files mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/BaseCommand.java mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CloneCommand.java
diffstat 2 files changed, 7 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/BaseCommand.java	Tue Jul 27 12:37:39 2010 +0400
+++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/BaseCommand.java	Fri Jul 30 20:03:51 2010 +0400
@@ -70,6 +70,12 @@
     }
   }
 
+  protected void failIfNonZeroExitCode(@NotNull GeneralCommandLine cli, @NotNull ExecResult res) throws VcsException {
+    if (res.getExitCode() != 0) {
+      CommandUtil.commandFailed(cli.getCommandLineString(), res);
+    }
+  }
+
   public Set<String> getPrivateData() {
     return Collections.singleton(mySettings.getPassword());
   }
--- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CloneCommand.java	Tue Jul 27 12:37:39 2010 +0400
+++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CloneCommand.java	Fri Jul 30 20:03:51 2010 +0400
@@ -72,6 +72,6 @@
     cli.addParameter(dir.getName());
 
     ExecResult res = runCommand(cli, 24*3600); // some repositories are quite large, we set timeout to 24 hours
-    failIfNotEmptyStdErr(cli, res);
+    failIfNonZeroExitCode(cli, res);
   }
 }