Skip to content

Commit bb199cf

Browse files
committed
Address review feedback
1 parent 60b4e0d commit bb199cf

File tree

3 files changed

+17
-24
lines changed

3 files changed

+17
-24
lines changed

buildSrc/src/main/java/org/elasticsearch/gradle/DistributionDownloadPlugin.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ public static NamedDomainObjectContainer<DistributionResolution> getRegistration
119119
return (NamedDomainObjectContainer<DistributionResolution>) project.getExtensions().getByName(RESOLUTION_CONTAINER_NAME);
120120
}
121121

122-
private ElasticsearchDistribution finalizeDistributionDependencies(Project project, ElasticsearchDistribution distribution) {
122+
private void finalizeDistributionDependencies(Project project, ElasticsearchDistribution distribution) {
123123
DependencyHandler dependencies = project.getDependencies();
124124
// for the distribution as a file, just depend on the artifact directly
125125
DistributionDependency distributionDependency = resolveDependencyNotation(project, distribution);
@@ -130,7 +130,6 @@ private ElasticsearchDistribution finalizeDistributionDependencies(Project proje
130130
// an artifact transform registered to resolve it as an unpacked folder.
131131
dependencies.add(distribution.getExtracted().getName(), distributionDependency.getExtractedNotation());
132132
}
133-
return distribution;
134133
}
135134

136135
private DistributionDependency resolveDependencyNotation(Project p, ElasticsearchDistribution distribution) {

buildSrc/src/main/java/org/elasticsearch/gradle/ElasticsearchDistribution.java

Lines changed: 15 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
package org.elasticsearch.gradle;
2121

2222
import org.elasticsearch.gradle.docker.DockerSupportService;
23+
import org.gradle.api.Action;
2324
import org.gradle.api.Buildable;
2425
import org.gradle.api.artifacts.Configuration;
2526
import org.gradle.api.model.ObjectFactory;
@@ -31,8 +32,6 @@
3132
import java.util.Collections;
3233
import java.util.Iterator;
3334
import java.util.Locale;
34-
import java.util.Optional;
35-
import java.util.function.Function;
3635

3736
public class ElasticsearchDistribution implements Buildable, Iterable<File> {
3837

@@ -105,7 +104,7 @@ public String toString() {
105104
private final Property<Boolean> bundledJdk;
106105
private final Property<Boolean> failIfUnavailable;
107106
private final Configuration extracted;
108-
private Function<ElasticsearchDistribution, ElasticsearchDistribution> distributionFinalizer;
107+
private Action<ElasticsearchDistribution> distributionFinalizer;
109108
private boolean froozen = false;
110109

111110
ElasticsearchDistribution(
@@ -114,7 +113,7 @@ public String toString() {
114113
Provider<DockerSupportService> dockerSupport,
115114
Configuration fileConfiguration,
116115
Configuration extractedConfiguration,
117-
Function<ElasticsearchDistribution, ElasticsearchDistribution> distributionFinalizer
116+
Action<ElasticsearchDistribution> distributionFinalizer
118117
) {
119118
this.name = name;
120119
this.dockerSupport = dockerSupport;
@@ -210,7 +209,7 @@ public String toString() {
210209
public ElasticsearchDistribution maybeFreeze() {
211210
if (!froozen) {
212211
finalizeValues();
213-
distributionFinalizer.apply(this);
212+
distributionFinalizer.execute(this);
214213
froozen = true;
215214
}
216215
return this;
@@ -238,26 +237,16 @@ public Configuration getExtracted() {
238237

239238
@Override
240239
public TaskDependency getBuildDependencies() {
241-
Optional<TaskDependency> dockerBuildDependencies = dockerBuildDependencies();
242-
return dockerBuildDependencies.orElseGet(() -> {
240+
if (skippingDockerDistributionBuild()) {
241+
return task -> Collections.emptySet();
242+
} else {
243243
maybeFreeze();
244244
return getType().shouldExtract() ? extracted.getBuildDependencies() : configuration.getBuildDependencies();
245-
});
246-
}
247-
248-
public TaskDependency getArchiveBuildDependencies() {
249-
Optional<TaskDependency> dockerBuildDependencies = dockerBuildDependencies();
250-
return dockerBuildDependencies.orElseGet(() -> {
251-
maybeFreeze();
252-
return configuration.getBuildDependencies();
253-
});
245+
}
254246
}
255247

256-
private Optional<TaskDependency> dockerBuildDependencies() {
257-
// For non-required Docker distributions, skip building the distribution is Docker is unavailable
258-
return (isDocker() && getFailIfUnavailable() == false && dockerSupport.get().getDockerAvailability().isAvailable == false)
259-
? Optional.of(task -> Collections.emptySet())
260-
: Optional.empty();
248+
private boolean skippingDockerDistributionBuild() {
249+
return isDocker() && getFailIfUnavailable() == false && dockerSupport.get().getDockerAvailability().isAvailable == false;
261250
}
262251

263252
@Override
@@ -329,4 +318,9 @@ void finalizeValues() {
329318
flavor.finalizeValue();
330319
bundledJdk.finalizeValue();
331320
}
321+
322+
public Configuration getArchive() {
323+
maybeFreeze();
324+
return configuration;
325+
}
332326
}

buildSrc/src/main/java/org/elasticsearch/gradle/test/DistroTestPlugin.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ public void apply(Project project) {
114114
String taskname = destructiveDistroTestTaskName(distribution);
115115
TaskProvider<?> depsTask = project.getTasks().register(taskname + "#deps");
116116
// explicitly depend on the archive not on the implicit extracted distribution
117-
depsTask.configure(t -> t.dependsOn(distribution.getArchiveBuildDependencies(), examplePlugin, quotaAwareFsPlugin));
117+
depsTask.configure(t -> t.dependsOn(distribution.getArchive(), examplePlugin, quotaAwareFsPlugin));
118118
depsTasks.put(taskname, depsTask);
119119
TaskProvider<Test> destructiveTask = configureTestTask(project, taskname, distribution, t -> {
120120
t.onlyIf(t2 -> distribution.isDocker() == false || dockerSupport.get().getDockerAvailability().isAvailable);

0 commit comments

Comments
 (0)