From b70e7f3bf50cf0f6fde0c2f7e7496ddd928908ff Mon Sep 17 00:00:00 2001 From: Rene Groeschke Date: Mon, 17 Mar 2025 08:27:03 +0100 Subject: [PATCH] [Build] Rework internal build plugin plugin to work with Isolated Projects (#123461) This fixes a general flaw in our build logic where we reach out to configurations of other projects. This is not best practice and breaks future initiatives like IsolatedProjects that allow parallel configuration of subprojects. --- .../BaseInternalPluginBuildPlugin.java | 26 ------------------- .../internal/RestrictedBuildApiService.java | 6 ----- 2 files changed, 32 deletions(-) diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/BaseInternalPluginBuildPlugin.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/BaseInternalPluginBuildPlugin.java index 6a1df303d6d9e..b6f4c99e3d0e6 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/BaseInternalPluginBuildPlugin.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/BaseInternalPluginBuildPlugin.java @@ -17,10 +17,7 @@ import org.elasticsearch.gradle.internal.test.ClusterFeaturesMetadataPlugin; import org.elasticsearch.gradle.plugin.PluginBuildPlugin; import org.elasticsearch.gradle.plugin.PluginPropertiesExtension; -import org.elasticsearch.gradle.testclusters.ElasticsearchCluster; -import org.elasticsearch.gradle.testclusters.TestClustersPlugin; import org.elasticsearch.gradle.util.GradleUtils; -import org.gradle.api.NamedDomainObjectContainer; import org.gradle.api.Plugin; import org.gradle.api.Project; @@ -81,29 +78,6 @@ public void doCall() { if (isModule == false || isXPackModule) { addNoticeGeneration(project, extension); } - project.afterEvaluate(p -> { - @SuppressWarnings("unchecked") - NamedDomainObjectContainer testClusters = (NamedDomainObjectContainer) project - .getExtensions() - .getByName(TestClustersPlugin.EXTENSION_NAME); - p.getExtensions().getByType(PluginPropertiesExtension.class).getExtendedPlugins().forEach(pluginName -> { - // Auto add any dependent modules - findModulePath(project, pluginName).ifPresent( - path -> testClusters.configureEach(elasticsearchCluster -> elasticsearchCluster.module(path)) - ); - }); - }); - } - - Optional findModulePath(Project project, String pluginName) { - return project.getRootProject() - .getAllprojects() - .stream() - .filter(p -> GradleUtils.isModuleProject(p.getPath())) - .filter(p -> p.getPlugins().hasPlugin(PluginBuildPlugin.class)) - .filter(p -> p.getExtensions().getByType(PluginPropertiesExtension.class).getName().equals(pluginName)) - .findFirst() - .map(Project::getPath); } /** diff --git a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/RestrictedBuildApiService.java b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/RestrictedBuildApiService.java index 6d538f207702d..c9833eab3ddb0 100644 --- a/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/RestrictedBuildApiService.java +++ b/build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/RestrictedBuildApiService.java @@ -49,8 +49,6 @@ private static ListMultimap, String> createLegacyRestTestBasePluginUsag map.put(LegacyRestTestBasePlugin.class, ":plugins:discovery-ec2"); map.put(LegacyRestTestBasePlugin.class, ":plugins:discovery-gce"); map.put(LegacyRestTestBasePlugin.class, ":plugins:mapper-annotated-text"); - map.put(LegacyRestTestBasePlugin.class, ":plugins:mapper-murmur3"); - map.put(LegacyRestTestBasePlugin.class, ":plugins:repository-hdfs"); map.put(LegacyRestTestBasePlugin.class, ":plugins:store-smb"); map.put(LegacyRestTestBasePlugin.class, ":qa:ccs-rolling-upgrade-remote-cluster"); map.put(LegacyRestTestBasePlugin.class, ":qa:mixed-cluster"); @@ -74,11 +72,7 @@ private static ListMultimap, String> createLegacyRestTestBasePluginUsag map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:ent-search"); map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:fleet"); map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:logstash"); - map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:mapper-constant-keyword"); - map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:mapper-unsigned-long"); - map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:mapper-version"); map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:vector-tile"); - map.put(LegacyRestTestBasePlugin.class, ":x-pack:plugin:wildcard"); map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:mixed-tier-cluster"); map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:repository-old-versions"); map.put(LegacyRestTestBasePlugin.class, ":x-pack:qa:rolling-upgrade");