diff --git a/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/CommitStatusPublisherFeature.java b/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/CommitStatusPublisherFeature.java index 394d75c4..76c23112 100644 --- a/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/CommitStatusPublisherFeature.java +++ b/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/CommitStatusPublisherFeature.java @@ -82,7 +82,7 @@ public Collection process(Map params) { }; } - @Override + //@Override public boolean isRequiresAgent() { return false; } diff --git a/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/Constants.java b/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/Constants.java index c9748e68..341ee077 100644 --- a/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/Constants.java +++ b/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/Constants.java @@ -30,6 +30,7 @@ public class Constants { public static final String GERRIT_PUBLISHER_ID = "gerritStatusPublisher"; public static final String GERRIT_SERVER = "gerritServer"; public static final String GERRIT_PROJECT = "gerritProject"; + public static final String GERRIT_SCORE_FIELD = "gerritScoreField"; public static final String GERRIT_USERNAME = "gerritUsername"; public static final String GERRIT_SUCCESS_VOTE = "successVote"; public static final String GERRIT_FAILURE_VOTE = "failureVote"; @@ -120,6 +121,11 @@ public String getGerritUsername() { return GERRIT_USERNAME; } + @NotNull + public String getGerritScoreField() { + return GERRIT_SCORE_FIELD; + } + @NotNull public String getGerritSuccessVote() { return GERRIT_SUCCESS_VOTE; diff --git a/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritClientBase.java b/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritClientBase.java index 96c2b780..68668df7 100644 --- a/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritClientBase.java +++ b/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritClientBase.java @@ -21,8 +21,15 @@ abstract class GerritClientBase implements GerritClient { public void review(@NotNull final GerritConnectionDetails connectionDetails, @NotNull final String vote, @NotNull final String message, @NotNull final String revision) throws JSchException, IOException { StringBuilder command = new StringBuilder(); + + /** + * Added gerScoreField + * */ command.append("gerrit review --project ").append(connectionDetails.getGerritProject()) - .append(" --verified ").append(vote) + .append(" --") + .append(connectionDetails.gerScoreField()).append(" ") + //.append(" --verified ") + .append(vote) .append(" -m \"").append(escape(message)).append("\" ") .append(revision); runCommand(connectionDetails, command.toString()); diff --git a/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritConnectionDetails.java b/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritConnectionDetails.java index 65ae1a5d..ba5c940b 100644 --- a/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritConnectionDetails.java +++ b/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritConnectionDetails.java @@ -13,14 +13,16 @@ class GerritConnectionDetails { private final String myServer; private final String myUserName; private final String myKeyId; + private final String myGerritScoreField; GerritConnectionDetails(@NotNull SProject project, @NotNull String gerritProject, - @NotNull String server, @NotNull String username, @Nullable String keyId) { + @NotNull String server, @NotNull String username, @Nullable String keyId, @NotNull String gerritScoreFiled) { myProject = project; myGerritProject = gerritProject; myServer = server; myUserName = username; myKeyId = keyId; + myGerritScoreField = gerritScoreFiled; } @NotNull @@ -48,4 +50,7 @@ String getKeyId() { return myKeyId; } + @NotNull + String gerScoreField() {return myGerritScoreField; } + } diff --git a/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritPublisher.java b/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritPublisher.java index c357ffd9..d810ae96 100644 --- a/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritPublisher.java +++ b/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritPublisher.java @@ -52,7 +52,7 @@ public boolean buildFinished(@NotNull SFinishedBuild build, @NotNull BuildRevisi myGerritClient.review( new GerritConnectionDetails(bt.getProject(), getGerritProject(), getGerritServer(), getUsername(), - myParams.get(ServerSshKeyManager.TEAMCITY_SSH_KEY_PROP)), + myParams.get(ServerSshKeyManager.TEAMCITY_SSH_KEY_PROP), getGerritScoreField()), vote, msg, revision.getRevision() ); return true; @@ -70,6 +70,8 @@ private String getGerritProject() { return myParams.get(Constants.GERRIT_PROJECT); } + private String getGerritScoreField() {return myParams.get(Constants.GERRIT_SCORE_FIELD); } + private String getUsername() { return myParams.get(Constants.GERRIT_USERNAME); } diff --git a/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritSettings.java b/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritSettings.java index 35e3d006..7068aa6e 100644 --- a/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritSettings.java +++ b/commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gerrit/GerritSettings.java @@ -64,6 +64,7 @@ public Map getDefaultParameters() { Map params = new HashMap(); params.put(Constants.GERRIT_SUCCESS_VOTE, "+1"); params.put(Constants.GERRIT_FAILURE_VOTE, "-1"); + params.put(Constants.GERRIT_SCORE_FIELD, "build-result"); return params; } @@ -108,7 +109,7 @@ public void testConnection(@NotNull BuildTypeIdentity buildTypeOrTemplate, @NotN myGerritClient.testConnection( new GerritConnectionDetails(buildTypeOrTemplate.getProject(), params.get(Constants.GERRIT_PROJECT), params.get(Constants.GERRIT_SERVER), params.get(Constants.GERRIT_USERNAME), - params.get(ServerSshKeyManager.TEAMCITY_SSH_KEY_PROP)) + params.get(ServerSshKeyManager.TEAMCITY_SSH_KEY_PROP), params.get(Constants.GERRIT_SCORE_FIELD)) ); } catch (Exception e) { throw new PublisherException("Gerrit publisher connection test has failed", e); diff --git a/commit-status-publisher-server/src/main/resources/buildServerResources/gerrit/gerritSettings.jsp b/commit-status-publisher-server/src/main/resources/buildServerResources/gerrit/gerritSettings.jsp index af6fc2d4..7ea1d28b 100644 --- a/commit-status-publisher-server/src/main/resources/buildServerResources/gerrit/gerritSettings.jsp +++ b/commit-status-publisher-server/src/main/resources/buildServerResources/gerrit/gerritSettings.jsp @@ -40,6 +40,15 @@ + + + + + Like: reviewed | build-result | code-review | extension-check + + + + diff --git a/commit-status-publisher-server/src/test/java/jetbrains/buildServer/commitPublisher/CommitStatusPublisherTestBase.java b/commit-status-publisher-server/src/test/java/jetbrains/buildServer/commitPublisher/CommitStatusPublisherTestBase.java index 0c904cf1..4dfa291c 100644 --- a/commit-status-publisher-server/src/test/java/jetbrains/buildServer/commitPublisher/CommitStatusPublisherTestBase.java +++ b/commit-status-publisher-server/src/test/java/jetbrains/buildServer/commitPublisher/CommitStatusPublisherTestBase.java @@ -132,12 +132,12 @@ public ValueResolver getValueResolver() { return null; } - @Override + //@Override public boolean isBranchesConfigured() { return false; } - @Override + //@Override public boolean isCompositeBuild() { return false; } @@ -161,7 +161,7 @@ public Browser getVcsBrowser(boolean b, @Nullable String s) { return null; } - @Override + //@Override public boolean isDefaultExcluded() { return false; } } diff --git a/commit-status-publisher-server/src/test/java/jetbrains/buildServer/commitPublisher/gerrit/GerritPublisherTest.java b/commit-status-publisher-server/src/test/java/jetbrains/buildServer/commitPublisher/gerrit/GerritPublisherTest.java index cee94075..d5235cf4 100644 --- a/commit-status-publisher-server/src/test/java/jetbrains/buildServer/commitPublisher/gerrit/GerritPublisherTest.java +++ b/commit-status-publisher-server/src/test/java/jetbrains/buildServer/commitPublisher/gerrit/GerritPublisherTest.java @@ -81,6 +81,7 @@ protected Map getPublisherParams(final String gerritProjectName) put(Constants.GERRIT_USERNAME, "gerrit_user"); put(Constants.GERRIT_SUCCESS_VOTE, "+1"); put(Constants.GERRIT_FAILURE_VOTE, "-1"); + put(Constants.GERRIT_SCORE_FIELD, "verified"); }}; }