Merge branch 'stable-3.2'

* stable-3.2:
  Add InstanceId dimension, when available
  Correct unnecessary builder reassignment

Change-Id: Ibcff702b27b21507bd8929f2cb90f3dda8a1594b
diff --git a/src/test/java/com/googlesource/gerrit/plugins/metricsreportercloudwatch/GerritCloudwatchReporterConfigTest.java b/src/test/java/com/googlesource/gerrit/plugins/metricsreportercloudwatch/GerritCloudwatchReporterConfigTest.java
index f00ee2d..dc00d27 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/metricsreportercloudwatch/GerritCloudwatchReporterConfigTest.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/metricsreportercloudwatch/GerritCloudwatchReporterConfigTest.java
@@ -34,7 +34,8 @@
 public class GerritCloudwatchReporterConfigTest {
   private static final String gerritInstanceId = "testInstanceId";
   private static final String PLUGIN_NAME = "foo";
-  private final PluginConfig emptyGlobalPluginConfig = new PluginConfig(PLUGIN_NAME, new Config());
+  private final PluginConfig.Update emptyGlobalPluginConfig =
+      PluginConfig.Update.forTest(PLUGIN_NAME, new Config());
 
   GerritCloudwatchReporterConfig reporterConfig;
 
@@ -42,7 +43,8 @@
 
   @Test
   public void shouldGetAllDefaultsWhenConfigurationIsEmpty() {
-    when(configFactory.getFromGerritConfig(PLUGIN_NAME)).thenReturn(emptyGlobalPluginConfig);
+    when(configFactory.getFromGerritConfig(PLUGIN_NAME))
+        .thenReturn(emptyGlobalPluginConfig.asPluginConfig());
     reporterConfig = new GerritCloudwatchReporterConfig(configFactory, PLUGIN_NAME, null);
 
     assertThat(reporterConfig.getInitialDelay())
@@ -60,14 +62,15 @@
 
   @Test
   public void shouldReadMetricValuesFromConfiguration() {
-    PluginConfig globalPluginConfig = emptyGlobalPluginConfig;
+    PluginConfig.Update globalPluginConfig = emptyGlobalPluginConfig;
     globalPluginConfig.setString(GerritCloudwatchReporterConfig.KEY_NAMESPACE, "foobar");
     globalPluginConfig.setString(GerritCloudwatchReporterConfig.KEY_RATE, "3m");
     globalPluginConfig.setString(GerritCloudwatchReporterConfig.KEY_INITIAL_DELAY, "20s");
     globalPluginConfig.setBoolean(GerritCloudwatchReporterConfig.KEY_DRYRUN, true);
     globalPluginConfig.setBoolean(GerritCloudwatchReporterConfig.KEY_JVM_METRICS, true);
 
-    when(configFactory.getFromGerritConfig(PLUGIN_NAME)).thenReturn(globalPluginConfig);
+    when(configFactory.getFromGerritConfig(PLUGIN_NAME))
+        .thenReturn(globalPluginConfig.asPluginConfig());
     reporterConfig =
         new GerritCloudwatchReporterConfig(configFactory, PLUGIN_NAME, gerritInstanceId);
 
@@ -81,11 +84,12 @@
 
   @Test
   public void shouldReadCorrectExclusionFilter() {
-    PluginConfig globalPluginConfig = emptyGlobalPluginConfig;
+    PluginConfig.Update globalPluginConfig = emptyGlobalPluginConfig;
     globalPluginConfig.setStringList(
         GerritCloudwatchReporterConfig.KEY_EXCLUDE_METRICS, Arrays.asList("foo.*", ".*bar"));
 
-    when(configFactory.getFromGerritConfig(PLUGIN_NAME)).thenReturn(globalPluginConfig);
+    when(configFactory.getFromGerritConfig(PLUGIN_NAME))
+        .thenReturn(globalPluginConfig.asPluginConfig());
     reporterConfig =
         new GerritCloudwatchReporterConfig(configFactory, PLUGIN_NAME, gerritInstanceId);
 
@@ -98,11 +102,12 @@
   @Test
   public void shouldThrowAnExceptionWhenExcludeMetricsRegexIsNotValid() {
     final String INVALID_REGEXP = "[[?";
-    PluginConfig globalPluginConfig = emptyGlobalPluginConfig;
+    PluginConfig.Update globalPluginConfig = emptyGlobalPluginConfig;
     globalPluginConfig.setString(
         GerritCloudwatchReporterConfig.KEY_EXCLUDE_METRICS, INVALID_REGEXP);
 
-    when(configFactory.getFromGerritConfig(PLUGIN_NAME)).thenReturn(globalPluginConfig);
+    when(configFactory.getFromGerritConfig(PLUGIN_NAME))
+        .thenReturn(globalPluginConfig.asPluginConfig());
 
     assertThrows(
         PatternSyntaxException.class,