changeset 905:9af9d7f944d9

Make sure commit message is not empty Otherwise mercurial launches an editor and waits for commit message.
author Dmitry Neverov <dmitry.neverov@jetbrains.com>
date Thu, 27 Nov 2014 21:05:41 +0100
parents 2d5beb7d37cd
children 884c3d03f6ca
files mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupport.java
diffstat 1 files changed, 9 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupport.java	Thu Nov 20 15:43:07 2014 +0100
+++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCommitSupport.java	Thu Nov 27 21:05:41 2014 +0100
@@ -20,6 +20,7 @@
 import jetbrains.buildServer.buildTriggers.vcs.mercurial.command.HgVcsRoot;
 import jetbrains.buildServer.buildTriggers.vcs.mercurial.command.PushCommand;
 import jetbrains.buildServer.util.FileUtil;
+import jetbrains.buildServer.util.StringUtil;
 import jetbrains.buildServer.vcs.*;
 import org.jetbrains.annotations.NotNull;
 
@@ -148,7 +149,7 @@
         }
 
         repo.addRemove().call();
-        int exitCode = repo.commit().by(commitSettings.getUserName()).message(commitSettings.getDescription()).call();
+        int exitCode = repo.commit().by(commitSettings.getUserName()).message(nonEmptyMessage(commitSettings)).call();
         if (exitCode == 1)
           return CommitResult.createCommitNotPerformedResult("repository is up-to-date");
 
@@ -167,6 +168,13 @@
       }
     }
 
+    private String nonEmptyMessage(@NotNull CommitSettings commitSettings) {
+      String msg = commitSettings.getDescription();
+      if (!StringUtil.isEmpty(msg))
+        return msg;
+      return "no comments";
+    }
+
     public void dispose() {
       FileUtil.delete(myPatchDir);
       FileUtil.delete(myCheckoutDir);