Merge branch 'stable-3.0' * stable-3.0: Allow to configure the number of hook execution workers Submit: Handle potentially missing username Change-Id: Ib92b3db88ad33e56b3f7bfcf1ba8069a318125e4
diff --git a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookArgs.java b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookArgs.java index 87d4291..190826e 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookArgs.java +++ b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookArgs.java
@@ -105,7 +105,7 @@ uf.flatMap( f -> f.getChangeViewUrl( - new Project.NameKey(change.project), new Change.Id(change._number))) + Project.nameKey(change.project), Change.id(change._number))) .orElse("")); } else { args.add(""); @@ -131,7 +131,7 @@ private String format(AccountInfo account) { return String.format( - "\"%s\"", identifiedUserFactory.create(new Account.Id(account._accountId)).getNameEmail()); + "\"%s\"", identifiedUserFactory.create(Account.id(account._accountId)).getNameEmail()); } @Override
diff --git a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookMetrics.java b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookMetrics.java index 9b0bc82..e5dd877 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookMetrics.java +++ b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookMetrics.java
@@ -31,7 +31,7 @@ @Inject HookMetrics(MetricMaker metricMaker) { - Field<String> field = Field.ofString("hook"); + Field<String> field = Field.ofString("hook").build(); latency = metricMaker.newTimer( "latency", @@ -47,7 +47,7 @@ "timeout", new Description("Hook execution timeouts").setRate(), field); } - public Timer1.Context start(String name) { + public Timer1.Context<String> start(String name) { return latency.start(name); }
diff --git a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookQueue.java b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookQueue.java index 50ba975..c8f154a 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookQueue.java +++ b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookQueue.java
@@ -21,6 +21,7 @@ import com.google.inject.Inject; import java.nio.file.Files; import java.nio.file.Path; +import java.util.concurrent.Future; import java.util.concurrent.ScheduledExecutorService; import org.eclipse.jgit.lib.Config; @@ -47,7 +48,8 @@ logger.atFine().log("Hook file not found: %s", hook.toAbsolutePath()); return; } - queue.submit(new HookTask.Async(projectName, hook, args)); + @SuppressWarnings("unused") + Future<?> ignored = queue.submit(new HookTask.Async(projectName, hook, args)); } @Override
diff --git a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookTask.java b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookTask.java index 8b06a24..ee59fb4 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/hooks/HookTask.java +++ b/src/main/java/com/googlesource/gerrit/plugins/hooks/HookTask.java
@@ -85,7 +85,7 @@ public HookResult runHook() { HookResult result = null; String name = getName(); - try (Timer1.Context timer = args.metrics.start(name)) { + try (Timer1.Context<String> timer = args.metrics.start(name)) { args.metrics.count(name); List<String> argv = new ArrayList<>(1 + args.get().size()); argv.add(hook.toAbsolutePath().toString()); @@ -98,7 +98,7 @@ env.put("GERRIT_SITE", sitePath.toAbsolutePath().toString()); if (projectName != null) { - try (Repository git = args.gitManager.openRepository(new Project.NameKey(projectName))) { + try (Repository git = args.gitManager.openRepository(Project.nameKey(projectName))) { pb.directory(git.getDirectory()); env.put("GIT_DIR", git.getDirectory().getAbsolutePath()); }
diff --git a/src/main/java/com/googlesource/gerrit/plugins/hooks/Submit.java b/src/main/java/com/googlesource/gerrit/plugins/hooks/Submit.java index e383200..f23cfa7 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/hooks/Submit.java +++ b/src/main/java/com/googlesource/gerrit/plugins/hooks/Submit.java
@@ -14,7 +14,7 @@ package com.googlesource.gerrit.plugins.hooks; -import com.google.gerrit.reviewdb.client.Branch; +import com.google.gerrit.reviewdb.client.BranchNameKey; import com.google.gerrit.reviewdb.client.PatchSet; import com.google.gerrit.server.IdentifiedUser; import com.google.gerrit.server.git.CodeReviewCommit; @@ -41,7 +41,7 @@ Repository repo, CodeReviewCommit commit, ProjectState destProject, - Branch.NameKey destBranch, + BranchNameKey destBranch, PatchSet.Id patchSetId, IdentifiedUser caller) throws MergeValidationException { @@ -49,7 +49,7 @@ HookArgs args = hookFactory.createArgs(); args.add("--project", projectName); - args.add("--branch", destBranch.get()); + args.add("--branch", destBranch.branch()); args.add("--submitter", caller.getNameEmail()); args.add("--submitter-username", caller.getUserName().orElse(null)); args.add("--patchset", patchSetId.get());