Browse Source

Always use bundled JDK for external cluster nodes when BWC testing (#51505)

Mark Vieira 5 years ago
parent
commit
e8562a4e11

+ 2 - 7
buildSrc/src/main/groovy/org/elasticsearch/gradle/test/RestIntegTestTask.groovy

@@ -45,12 +45,8 @@ class RestIntegTestTask extends DefaultTask {
         runner = project.tasks.create("${name}Runner", RestTestRunnerTask.class)
         super.dependsOn(runner)
 
-        project.testClusters {
-                "$name" {
-                    javaHome = BuildParams.runtimeJavaHome
-                }
-        }
-        runner.useCluster project.testClusters."$name"
+        ElasticsearchCluster cluster = project.testClusters.create(name)
+        runner.useCluster cluster
 
         runner.include('**/*IT.class')
         runner.systemProperty('tests.rest.load_packaged', 'false')
@@ -60,7 +56,6 @@ class RestIntegTestTask extends DefaultTask {
                 throw new IllegalArgumentException("tests.rest.cluster, tests.cluster, and tests.clustername must all be null or non-null")
             }
 
-            ElasticsearchCluster cluster = project.testClusters."${name}"
             runner.nonInputProperties.systemProperty('tests.rest.cluster', "${-> cluster.allHttpSocketURI.join(",")}")
             runner.nonInputProperties.systemProperty('tests.cluster', "${-> cluster.transportPortURI}")
             runner.nonInputProperties.systemProperty('tests.clustername', "${-> cluster.getName()}")

+ 0 - 5
buildSrc/src/main/java/org/elasticsearch/gradle/testclusters/ElasticsearchCluster.java

@@ -243,11 +243,6 @@ public class ElasticsearchCluster implements TestClusterConfiguration, Named {
         }
     }
 
-    @Override
-    public void setJavaHome(File javaHome) {
-        nodes.all(each -> each.setJavaHome(javaHome));
-    }
-
     @Override
     public void start() {
         commonNodeConfig();

+ 4 - 18
buildSrc/src/main/java/org/elasticsearch/gradle/testclusters/ElasticsearchNode.java

@@ -30,6 +30,7 @@ import org.elasticsearch.gradle.ReaperService;
 import org.elasticsearch.gradle.Version;
 import org.elasticsearch.gradle.VersionProperties;
 import org.elasticsearch.gradle.http.WaitForHttpResource;
+import org.elasticsearch.gradle.info.BuildParams;
 import org.gradle.api.Action;
 import org.gradle.api.Named;
 import org.gradle.api.NamedDomainObjectContainer;
@@ -145,7 +146,6 @@ public class ElasticsearchNode implements TestClusterConfiguration {
     private int currentDistro = 0;
     private TestDistribution testDistribution;
     private List<ElasticsearchDistribution> distributions = new ArrayList<>();
-    private File javaHome;
     private volatile Process esProcess;
     private Function<String, String> nameCustomization = Function.identity();
     private boolean isWorkingDirConfigured = false;
@@ -373,21 +373,6 @@ public class ElasticsearchNode implements TestClusterConfiguration {
         configurationFrozen.set(true);
     }
 
-    @Override
-    public void setJavaHome(File javaHome) {
-        requireNonNull(javaHome, "null javaHome passed when configuring test cluster `" + this + "`");
-        checkFrozen();
-        if (javaHome.exists() == false) {
-            throw new TestClustersException("java home for `" + this + "` does not exists: `" + javaHome + "`");
-        }
-        this.javaHome = javaHome;
-    }
-
-    @Internal
-    public File getJavaHome() {
-        return javaHome;
-    }
-
     /**
      * Returns a stream of lines in the generated logs similar to Files.lines
      *
@@ -665,8 +650,9 @@ public class ElasticsearchNode implements TestClusterConfiguration {
 
     private Map<String, String> getESEnvironment() {
         Map<String, String> defaultEnv = new HashMap<>();
-        if (getJavaHome() != null) {
-            defaultEnv.put("JAVA_HOME", getJavaHome().getAbsolutePath());
+        // If we are testing the current version of Elasticsearch, use the configured runtime Java, otherwise use the bundled JDK
+        if (getTestDistribution() == TestDistribution.INTEG_TEST || getVersion().toString().equals(VersionProperties.getElasticsearch())) {
+            defaultEnv.put("JAVA_HOME", BuildParams.getRuntimeJavaHome().getAbsolutePath());
         }
         defaultEnv.put("ES_PATH_CONF", configFile.getParent().toString());
         String systemPropertiesString = "";

+ 0 - 2
buildSrc/src/main/java/org/elasticsearch/gradle/testclusters/TestClusterConfiguration.java

@@ -84,8 +84,6 @@ public interface TestClusterConfiguration {
 
     void freeze();
 
-    void setJavaHome(File javaHome);
-
     void start();
 
     void restart();

+ 0 - 1
qa/full-cluster-restart/build.gradle

@@ -41,7 +41,6 @@ for (Version bwcVersion : bwcVersions.indexCompatible) {
       setting 'indices.memory.shard_inactive_time', '20m'
       setting 'http.content_type.required', 'true'
       setting 'path.repo', "${buildDir}/cluster/shared/repo/${baseName}"
-      javaHome = BuildParams.runtimeJavaHome
     }
   }
 

+ 0 - 1
qa/mixed-cluster/build.gradle

@@ -59,7 +59,6 @@ for (Version bwcVersion : bwcVersions.wireCompatible) {
       numberOfNodes = 4
 
       setting 'path.repo', "${buildDir}/cluster/shared/repo/${baseName}"
-      javaHome = BuildParams.runtimeJavaHome
     }
   }
 

+ 0 - 1
qa/repository-multi-version/build.gradle

@@ -43,7 +43,6 @@ for (Version bwcVersion : bwcVersions.indexCompatible) {
       version = v
       numberOfNodes = 2
       setting 'path.repo', "${buildDir}/cluster/shared/repo/${baseName}"
-      javaHome = BuildParams.runtimeJavaHome
     }
   }
 

+ 0 - 1
qa/rolling-upgrade/build.gradle

@@ -70,7 +70,6 @@ for (Version bwcVersion : bwcVersions.wireCompatible) {
       setting 'repositories.url.allowed_urls', 'http://snapshot.test*'
       setting 'path.repo', "${buildDir}/cluster/shared/repo/${baseName}"
       setting 'http.content_type.required', 'true'
-      javaHome = BuildParams.runtimeJavaHome
     }
   }
 

+ 0 - 1
qa/verify-version-constants/build.gradle

@@ -37,7 +37,6 @@ for (Version bwcVersion : bwcVersions.indexCompatible) {
     "${baseName}" {
       version = bwcVersion.toString()
       setting 'http.content_type.required', 'true'
-      javaHome = BuildParams.runtimeJavaHome
     }
   }
 

+ 0 - 1
x-pack/qa/full-cluster-restart/build.gradle

@@ -66,7 +66,6 @@ for (Version bwcVersion : bwcVersions.indexCompatible) {
       versions = [bwcVersion.toString(), project.version]
       numberOfNodes = 2
       setting 'path.repo', "${buildDir}/cluster/shared/repo/${baseName}"
-      javaHome = BuildParams.runtimeJavaHome
       user username: "test_user", password: "x-pack-test-password"
 
       setting 'path.repo', "${buildDir}/cluster/shared/repo/${baseName}"

+ 0 - 1
x-pack/qa/rolling-upgrade-basic/build.gradle

@@ -48,7 +48,6 @@ for (Version bwcVersion : bwcVersions.wireCompatible) {
       setting 'xpack.ml.enabled', 'false'
       setting 'xpack.watcher.enabled', 'false'
       setting 'xpack.license.self_generated.type', 'basic'
-      javaHome = BuildParams.runtimeJavaHome
     }
   }
 

+ 0 - 2
x-pack/qa/rolling-upgrade-multi-cluster/build.gradle

@@ -53,8 +53,6 @@ for (Version bwcVersion : bwcVersions.wireCompatible) {
     setting 'xpack.ml.enabled', 'false'
     setting 'xpack.watcher.enabled', 'false'
     setting 'xpack.license.self_generated.type', 'trial'
-
-    javaHome = BuildParams.runtimeJavaHome
   }
 
   tasks.withType(RestTestRunnerTask).matching { it.name.startsWith(baseName) }.configureEach {

+ 0 - 2
x-pack/qa/rolling-upgrade/build.gradle

@@ -99,8 +99,6 @@ for (Version bwcVersion : bwcVersions.wireCompatible) {
       if (bwcVersion.before('5.6.9') || (bwcVersion.onOrAfter('6.0.0') && bwcVersion.before('6.2.4'))) {
         jvmArgs '-da:org.elasticsearch.xpack.monitoring.exporter.http.HttpExportBulk'
       }
-
-      javaHome = BuildParams.runtimeJavaHome
     }
   }