Skip to content

Commit e795867

Browse files
committed
Update Gradle to 8.12 (opensearch-project#16884)
Signed-off-by: Andriy Redko <andriy.redko@aiven.io> (cherry picked from commit 9bb1fbe)
1 parent da323e5 commit e795867

File tree

116 files changed

+526
-357
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

116 files changed

+526
-357
lines changed

build.gradle

+4-4
Original file line numberDiff line numberDiff line change
@@ -127,8 +127,8 @@ subprojects {
127127
name = 'Snapshots'
128128
url = 'https://aws.oss.sonatype.org/content/repositories/snapshots'
129129
credentials {
130-
username "$System.env.SONATYPE_USERNAME"
131-
password "$System.env.SONATYPE_PASSWORD"
130+
username = "$System.env.SONATYPE_USERNAME"
131+
password = "$System.env.SONATYPE_PASSWORD"
132132
}
133133
}
134134
}
@@ -412,7 +412,7 @@ allprojects {
412412
gradle.projectsEvaluated {
413413
allprojects {
414414
project.tasks.withType(JavaForkOptions) {
415-
maxHeapSize project.property('options.forkOptions.memoryMaximumSize')
415+
maxHeapSize = project.property('options.forkOptions.memoryMaximumSize')
416416
}
417417

418418
if (project.path == ':test:framework') {
@@ -728,7 +728,7 @@ tasks.named(JavaBasePlugin.CHECK_TASK_NAME) {
728728
}
729729

730730
tasks.register('checkCompatibility', CheckCompatibilityTask) {
731-
description('Checks the compatibility with child components')
731+
description = 'Checks the compatibility with child components'
732732
}
733733

734734
allprojects { project ->

buildSrc/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ dependencies {
105105
api "org.apache.commons:commons-compress:${props.getProperty('commonscompress')}"
106106
api 'org.apache.ant:ant:1.10.14'
107107
api 'com.netflix.nebula:gradle-extra-configurations-plugin:10.0.0'
108-
api 'com.netflix.nebula:nebula-publishing-plugin:21.0.0'
108+
api 'com.netflix.nebula:nebula-publishing-plugin:21.1.0'
109109
api 'com.netflix.nebula:gradle-info-plugin:12.1.6'
110110
api 'org.apache.rat:apache-rat:0.15'
111111
api "commons-io:commons-io:${props.getProperty('commonsio')}"

buildSrc/src/main/groovy/org/opensearch/gradle/NoticeTask.groovy

+12-4
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
package org.opensearch.gradle
3131

3232
import org.gradle.api.DefaultTask
33+
import org.gradle.api.Project
3334
import org.gradle.api.file.FileCollection
3435
import org.gradle.api.file.FileTree
3536
import org.gradle.api.file.SourceDirectorySet
@@ -39,6 +40,8 @@ import org.gradle.api.tasks.Optional
3940
import org.gradle.api.tasks.OutputFile
4041
import org.gradle.api.tasks.TaskAction
4142

43+
import javax.inject.Inject
44+
4245
import java.nio.file.Files
4346
import java.nio.file.attribute.PosixFilePermissions
4447

@@ -58,8 +61,12 @@ class NoticeTask extends DefaultTask {
5861
/** Directories to include notices from */
5962
private List<File> licensesDirs = new ArrayList<>()
6063

61-
NoticeTask() {
62-
description = 'Create a notice file from dependencies'
64+
private final Project project
65+
66+
@Inject
67+
NoticeTask(Project project) {
68+
this.project = project
69+
this.description = 'Create a notice file from dependencies'
6370
// Default licenses directory is ${projectDir}/licenses (if it exists)
6471
File licensesDir = new File(project.projectDir, 'licenses')
6572
if (licensesDir.exists()) {
@@ -161,11 +168,12 @@ class NoticeTask extends DefaultTask {
161168
@Optional
162169
FileCollection getNoticeFiles() {
163170
FileTree tree
171+
def p = project
164172
licensesDirs.each { dir ->
165173
if (tree == null) {
166-
tree = project.fileTree(dir)
174+
tree = p.fileTree(dir)
167175
} else {
168-
tree += project.fileTree(dir)
176+
tree += p.fileTree(dir)
169177
}
170178
}
171179

buildSrc/src/main/groovy/org/opensearch/gradle/plugin/PluginBuildPlugin.groovy

+2-2
Original file line numberDiff line numberDiff line change
@@ -160,14 +160,14 @@ class PluginBuildPlugin implements Plugin<Project> {
160160
archiveBaseName = archiveBaseName.get() + "-client"
161161
}
162162
// always configure publishing for client jars
163-
project.publishing.publications.nebula(MavenPublication).artifactId(extension.name + "-client")
163+
project.publishing.publications.nebula(MavenPublication).artifactId = extension.name + "-client"
164164
final BasePluginExtension base = project.getExtensions().findByType(BasePluginExtension.class)
165165
project.tasks.withType(GenerateMavenPom.class).configureEach { GenerateMavenPom generatePOMTask ->
166166
generatePOMTask.destination = "${project.buildDir}/distributions/${base.archivesName}-client-${project.versions.opensearch}.pom"
167167
}
168168
} else {
169169
if (project.plugins.hasPlugin(MavenPublishPlugin)) {
170-
project.publishing.publications.nebula(MavenPublication).artifactId(extension.name)
170+
project.publishing.publications.nebula(MavenPublication).artifactId = extension.name
171171
}
172172
}
173173
}

buildSrc/src/main/groovy/org/opensearch/gradle/precommit/LicenseHeadersTask.groovy

+9-2
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ import org.apache.rat.anttasks.Report
3232
import org.apache.rat.anttasks.SubstringLicenseMatcher
3333
import org.apache.rat.license.SimpleLicenseFamily
3434
import org.opensearch.gradle.AntTask
35+
import org.gradle.api.Project
3536
import org.gradle.api.file.FileCollection
3637
import org.gradle.api.tasks.Input
3738
import org.gradle.api.tasks.InputFiles
@@ -41,6 +42,8 @@ import org.gradle.api.tasks.PathSensitive
4142
import org.gradle.api.tasks.PathSensitivity
4243
import org.gradle.api.tasks.SkipWhenEmpty
4344

45+
import javax.inject.Inject
46+
4447
import java.nio.file.Files
4548

4649
/**
@@ -65,14 +68,18 @@ class LicenseHeadersTask extends AntTask {
6568
@Input
6669
List<String> excludes = []
6770

71+
private final Project project
72+
6873
/**
6974
* Additional license families that may be found. The key is the license category name (5 characters),
7075
* followed by the family name and the value list of patterns to search for.
7176
*/
7277
protected Map<String, String> additionalLicenses = new HashMap<>()
7378

74-
LicenseHeadersTask() {
75-
description = "Checks sources for missing, incorrect, or unacceptable license headers"
79+
@Inject
80+
LicenseHeadersTask(Project project) {
81+
this.project = project
82+
this.description = "Checks sources for missing, incorrect, or unacceptable license headers"
7683
}
7784

7885
/**

buildSrc/src/main/groovy/org/opensearch/gradle/test/AntFixture.groovy

+9-2
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,16 @@
3030
package org.opensearch.gradle.test
3131

3232
import org.apache.tools.ant.taskdefs.condition.Os
33+
import org.gradle.api.Project
3334
import org.gradle.api.GradleException
3435
import org.gradle.api.tasks.Exec
3536
import org.gradle.api.tasks.Internal
3637
import org.gradle.api.tasks.TaskProvider
3738
import org.opensearch.gradle.AntTask
3839
import org.opensearch.gradle.LoggedExec
40+
41+
import javax.inject.Inject
42+
3943
/**
4044
* A fixture for integration tests which runs in a separate process launched by Ant.
4145
*/
@@ -90,9 +94,12 @@ class AntFixture extends AntTask implements Fixture {
9094
}
9195

9296
private final TaskProvider stopTask
97+
private final Project project
9398

94-
AntFixture() {
95-
stopTask = createStopTask()
99+
@Inject
100+
AntFixture(Project project) {
101+
this.project = project
102+
this.stopTask = createStopTask()
96103
finalizedBy(stopTask)
97104
}
98105

buildSrc/src/main/java/org/opensearch/gradle/EmptyDirTask.java

+8-1
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
package org.opensearch.gradle;
3333

3434
import org.gradle.api.DefaultTask;
35+
import org.gradle.api.Project;
3536
import org.gradle.api.tasks.Input;
3637
import org.gradle.api.tasks.Internal;
3738
import org.gradle.api.tasks.TaskAction;
@@ -48,6 +49,12 @@ public class EmptyDirTask extends DefaultTask {
4849

4950
private File dir;
5051
private int dirMode = 0755;
52+
private final Project project;
53+
54+
@Inject
55+
public EmptyDirTask(Project project) {
56+
this.project = project;
57+
}
5158

5259
/**
5360
* Creates an empty directory with the configured permissions.
@@ -84,7 +91,7 @@ public void setDir(File dir) {
8491
* @param dir The path of the directory to create. Takes a String and coerces it to a file.
8592
*/
8693
public void setDir(String dir) {
87-
this.dir = getProject().file(dir);
94+
this.dir = project.file(dir);
8895
}
8996

9097
@Input

buildSrc/src/main/java/org/opensearch/gradle/ExportOpenSearchBuildResourcesTask.java

+6-2
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333

3434
import org.gradle.api.DefaultTask;
3535
import org.gradle.api.GradleException;
36+
import org.gradle.api.Project;
3637
import org.gradle.api.file.DirectoryProperty;
3738
import org.gradle.api.logging.Logger;
3839
import org.gradle.api.logging.Logging;
@@ -42,6 +43,8 @@
4243
import org.gradle.api.tasks.StopExecutionException;
4344
import org.gradle.api.tasks.TaskAction;
4445

46+
import javax.inject.Inject;
47+
4548
import java.io.File;
4649
import java.io.IOException;
4750
import java.io.InputStream;
@@ -67,8 +70,9 @@ public class ExportOpenSearchBuildResourcesTask extends DefaultTask {
6770

6871
private DirectoryProperty outputDir;
6972

70-
public ExportOpenSearchBuildResourcesTask() {
71-
outputDir = getProject().getObjects().directoryProperty();
73+
@Inject
74+
public ExportOpenSearchBuildResourcesTask(Project project) {
75+
outputDir = project.getObjects().directoryProperty();
7276
}
7377

7478
@OutputDirectory

buildSrc/src/main/java/org/opensearch/gradle/LoggedExec.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -70,15 +70,17 @@ public class LoggedExec extends Exec implements FileSystemOperationsAware {
7070
private static final Logger LOGGER = Logging.getLogger(LoggedExec.class);
7171
private Consumer<Logger> outputLogger;
7272
private FileSystemOperations fileSystemOperations;
73+
private final Project project;
7374

7475
interface InjectedExecOps {
7576
@Inject
7677
ExecOperations getExecOps();
7778
}
7879

7980
@Inject
80-
public LoggedExec(FileSystemOperations fileSystemOperations) {
81+
public LoggedExec(FileSystemOperations fileSystemOperations, Project project) {
8182
this.fileSystemOperations = fileSystemOperations;
83+
this.project = project;
8284
if (getLogger().isInfoEnabled() == false) {
8385
setIgnoreExitValue(true);
8486
setSpoolOutput(false);
@@ -111,7 +113,7 @@ public void execute(Task task) {
111113
public void setSpoolOutput(boolean spoolOutput) {
112114
final OutputStream out;
113115
if (spoolOutput) {
114-
File spoolFile = new File(getProject().getBuildDir() + "/buffered-output/" + this.getName());
116+
File spoolFile = new File(project.getBuildDir() + "/buffered-output/" + this.getName());
115117
out = new LazyFileOutputStream(spoolFile);
116118
outputLogger = logger -> {
117119
try {

buildSrc/src/main/java/org/opensearch/gradle/docker/DockerBuildTask.java

+9-4
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
import org.opensearch.gradle.LoggedExec;
3535
import org.gradle.api.DefaultTask;
3636
import org.gradle.api.GradleException;
37+
import org.gradle.api.Project;
3738
import org.gradle.api.file.DirectoryProperty;
3839
import org.gradle.api.file.RegularFileProperty;
3940
import org.gradle.api.logging.Logger;
@@ -60,18 +61,22 @@ public class DockerBuildTask extends DefaultTask {
6061
private static final Logger LOGGER = Logging.getLogger(DockerBuildTask.class);
6162

6263
private final WorkerExecutor workerExecutor;
63-
private final RegularFileProperty markerFile = getProject().getObjects().fileProperty();
64-
private final DirectoryProperty dockerContext = getProject().getObjects().directoryProperty();
64+
private final RegularFileProperty markerFile;
65+
private final DirectoryProperty dockerContext;
6566

6667
private String[] tags;
6768
private boolean pull = true;
6869
private boolean noCache = true;
6970
private String[] baseImages;
71+
private final Project project;
7072

7173
@Inject
72-
public DockerBuildTask(WorkerExecutor workerExecutor) {
74+
public DockerBuildTask(WorkerExecutor workerExecutor, Project project) {
7375
this.workerExecutor = workerExecutor;
74-
this.markerFile.set(getProject().getLayout().getBuildDirectory().file("markers/" + this.getName() + ".marker"));
76+
this.project = project;
77+
this.markerFile = project.getObjects().fileProperty();
78+
this.dockerContext = project.getObjects().directoryProperty();
79+
this.markerFile.set(project.getLayout().getBuildDirectory().file("markers/" + this.getName() + ".marker"));
7580
}
7681

7782
@TaskAction

buildSrc/src/main/java/org/opensearch/gradle/precommit/DependencyLicensesTask.java

+14-3
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import org.gradle.api.DefaultTask;
3737
import org.gradle.api.GradleException;
3838
import org.gradle.api.InvalidUserDataException;
39+
import org.gradle.api.Project;
3940
import org.gradle.api.file.FileCollection;
4041
import org.gradle.api.logging.Logger;
4142
import org.gradle.api.logging.Logging;
@@ -48,6 +49,8 @@
4849
import org.gradle.api.tasks.OutputDirectory;
4950
import org.gradle.api.tasks.TaskAction;
5051

52+
import javax.inject.Inject;
53+
5154
import java.io.File;
5255
import java.io.IOException;
5356
import java.nio.charset.StandardCharsets;
@@ -127,7 +130,7 @@ public class DependencyLicensesTask extends DefaultTask {
127130
/**
128131
* The directory to find the license and sha files in.
129132
*/
130-
private File licensesDir = new File(getProject().getProjectDir(), "licenses");
133+
private File licensesDir;
131134

132135
/**
133136
* A map of patterns to prefix, used to find the LICENSE and NOTICE file.
@@ -139,6 +142,14 @@ public class DependencyLicensesTask extends DefaultTask {
139142
*/
140143
private Set<String> ignoreShas = new HashSet<>();
141144

145+
private final Project project;
146+
147+
@Inject
148+
public DependencyLicensesTask(Project project) {
149+
this.project = project;
150+
this.licensesDir = new File(project.getProjectDir(), "licenses");
151+
}
152+
142153
/**
143154
* Add a mapping from a regex pattern for the jar name, to a prefix to find
144155
* the LICENSE and NOTICE file for that jar.
@@ -161,7 +172,7 @@ public void mapping(Map<String, String> props) {
161172
@InputFiles
162173
public Property<FileCollection> getDependencies() {
163174
if (dependenciesProvider == null) {
164-
dependenciesProvider = getProject().getObjects().property(FileCollection.class);
175+
dependenciesProvider = project.getObjects().property(FileCollection.class);
165176
}
166177
return dependenciesProvider;
167178
}
@@ -250,7 +261,7 @@ public void checkDependencies() throws IOException, NoSuchAlgorithmException {
250261
// by this output but when successful we can safely mark the task as up-to-date.
251262
@OutputDirectory
252263
public File getOutputMarker() {
253-
return new File(getProject().getBuildDir(), "dependencyLicense");
264+
return new File(project.getBuildDir(), "dependencyLicense");
254265
}
255266

256267
private void failIfAnyMissing(String item, Boolean exists, String type) {

0 commit comments

Comments
 (0)