GerritServer: Propagate index config to pgms

Change-Id: I16f08f08fb712ad4c2e064064e21991bcb982d28
diff --git a/java/com/google/gerrit/acceptance/GerritServer.java b/java/com/google/gerrit/acceptance/GerritServer.java
index 085fef5..9732d2c 100644
--- a/java/com/google/gerrit/acceptance/GerritServer.java
+++ b/java/com/google/gerrit/acceptance/GerritServer.java
@@ -306,6 +306,12 @@
     gerritConfig.load();
     gerritConfig.merge(cfg);
     mergeTestConfig(gerritConfig);
+    String configuredIndexBackend = cfg.getString("index", null, "type");
+    if (configuredIndexBackend == null) {
+      // Propagate index type to pgms that run off of the gerrit.config file on local disk.
+      IndexType indexType = IndexType.fromEnvironment().orElse(new IndexType("fake"));
+      gerritConfig.setString("index", null, "type", indexType.isLucene() ? "lucene" : "fake");
+    }
     gerritConfig.save();
 
     Init init = new Init();
diff --git a/javatests/com/google/gerrit/acceptance/pgm/InitIT.java b/javatests/com/google/gerrit/acceptance/pgm/InitIT.java
index 4db0177..073f427 100644
--- a/javatests/com/google/gerrit/acceptance/pgm/InitIT.java
+++ b/javatests/com/google/gerrit/acceptance/pgm/InitIT.java
@@ -15,6 +15,7 @@
 package com.google.gerrit.acceptance.pgm;
 
 import static com.google.common.truth.Truth8.assertThat;
+import static com.google.common.truth.TruthJUnit.assume;
 
 import com.google.common.collect.ImmutableSet;
 import com.google.errorprone.annotations.MustBeClosed;
@@ -61,6 +62,10 @@
 
   @Test
   public void initDoesNotReindexProjectsOnExistingSites() throws Exception {
+    // These tests expect the Lucene index to modify files on disk which the fake index doesn't do.
+    String configuredIndexBackend = baseConfig.getString("index", null, "type");
+    configuredIndexBackend = configuredIndexBackend == null ? "fake" : configuredIndexBackend;
+    assume().that(configuredIndexBackend).isEqualTo("lucene");
     initSite();
 
     // Simulate a projects indexes files modified in the past by 3 seconds