Skip to content

Commit c6db7a8

Browse files
authored
Allow overriding upstream ref (#135113) (#135202)
For most devs the default of finding the elastic remote and the main branch of that remote is the right upstream ref. But for tests that operate on fake or local repositories it's useful to be able to override the ref. This commit adds a parameter to the transport version resources allowing to override the ref used to look at upstream.
1 parent bdaad02 commit c6db7a8

File tree

3 files changed

+15
-0
lines changed

3 files changed

+15
-0
lines changed

build-tools-internal/src/integTest/groovy/org/elasticsearch/gradle/internal/transport/AbstractTransportVersionFuncTest.groovy

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,9 @@ class AbstractTransportVersionFuncTest extends AbstractGradleFuncTest {
115115
include ':myserver'
116116
include ':myplugin'
117117
"""
118+
propertiesFile << """
119+
org.elasticsearch.transports.upstreamRef=main
120+
"""
118121
versionPropertiesFile.text = versionPropertiesFile.text.replace("9.1.0", "9.2.0")
119122

120123
file("myserver/build.gradle") << """

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/transport/TransportVersionResourcesPlugin.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ public void apply(Project project) {
4949
Directory transportResources = project.getLayout().getProjectDirectory().dir("src/main/resources/" + resourceRoot);
5050
spec.getParameters().getTransportResourcesDirectory().set(transportResources);
5151
spec.getParameters().getRootDirectory().set(project.getLayout().getSettingsDirectory().getAsFile());
52+
Object upstreamRef = project.findProperty("org.elasticsearch.transport.upstreamRef");
53+
if (upstreamRef != null) {
54+
spec.getParameters().getUpstreamRefOverride().set(upstreamRef.toString());
55+
}
5256
});
5357

5458
var depsHandler = project.getDependencies();

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/transport/TransportVersionResourcesService.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,10 @@
1212
import org.gradle.api.file.DirectoryProperty;
1313
import org.gradle.api.logging.Logger;
1414
import org.gradle.api.logging.Logging;
15+
import org.gradle.api.provider.Property;
1516
import org.gradle.api.services.BuildService;
1617
import org.gradle.api.services.BuildServiceParameters;
18+
import org.gradle.api.tasks.Optional;
1719
import org.gradle.process.ExecOperations;
1820
import org.gradle.process.ExecResult;
1921

@@ -59,6 +61,9 @@ public interface Parameters extends BuildServiceParameters {
5961
DirectoryProperty getTransportResourcesDirectory();
6062

6163
DirectoryProperty getRootDirectory();
64+
65+
@Optional
66+
Property<String> getUpstreamRefOverride();
6267
}
6368

6469
@Inject
@@ -79,6 +84,9 @@ public interface Parameters extends BuildServiceParameters {
7984
public TransportVersionResourcesService(Parameters params) {
8085
this.transportResourcesDir = params.getTransportResourcesDirectory().get().getAsFile().toPath();
8186
this.rootDir = params.getRootDirectory().get().getAsFile().toPath();
87+
if (params.getUpstreamRefOverride().isPresent()) {
88+
upstreamRefName.set(params.getUpstreamRefOverride().get());
89+
}
8290
}
8391

8492
/**

0 commit comments

Comments
 (0)