# HG changeset patch # User Dmitry Neverov # Date 1382094464 -14400 # Node ID 8b09ec36fbeff7c6a30c455638838b88743f5fe6 # Parent 3cc513b9e3c137c01786803bc0e96bd956116ace Ability to specify an author of the merge commit diff -r 3cc513b9e3c1 -r 8b09ec36fbef mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CommitCommand.java --- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CommitCommand.java Wed Oct 16 14:33:41 2013 +0400 +++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/CommitCommand.java Fri Oct 18 15:07:44 2013 +0400 @@ -8,6 +8,7 @@ public class CommitCommand extends BaseCommand { private String myCommitMessage; + private String myUser; public CommitCommand(@NotNull CommandSettings commandSettings, @NotNull String hgPath, @@ -20,12 +21,19 @@ return this; } + public CommitCommand by(String user) { + myUser = user; + return this; + } + public void call() throws VcsException { MercurialCommandLine cmd = createCommandLine(); cmd.addParameter("commit"); cmd.addParameter("-S"); if (myCommitMessage != null) cmd.addParameters("-m", myCommitMessage); + if (myUser != null) + cmd.addParameters("--user", myUser); runCommand(cmd); } } diff -r 3cc513b9e3c1 -r 8b09ec36fbef mercurial-server/resources/buildServerResources/mercurialSettings.jsp --- a/mercurial-server/resources/buildServerResources/mercurialSettings.jsp Wed Oct 16 14:33:41 2013 +0400 +++ b/mercurial-server/resources/buildServerResources/mercurialSettings.jsp Fri Oct 18 15:07:44 2013 +0400 @@ -50,7 +50,7 @@ - +
Format: User Name <email>
diff -r 3cc513b9e3c1 -r 8b09ec36fbef mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialMergeSupport.java --- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialMergeSupport.java Wed Oct 16 14:33:41 2013 +0400 +++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialMergeSupport.java Fri Oct 18 15:07:44 2013 +0400 @@ -94,7 +94,7 @@ return MergeResult.createMergeError(e.getMessage()); } - repo.commit().message(message).call(); + repo.commit().by(hgRoot.getUserForTag()).message(message).call(); repo.push().toRepository(hgRoot.getRepository()).call(); return MergeResult.createMergeSuccessResult();