Skip to content

Commit b80a470

Browse files
authored
[Gradle] Remove deprecated gradle api usage (#2321) (#2325)
* Mark execOperatinos as internal * Fix more deprecations on the way * More deprecated api usages removed (cherry picked from commit ac7b8dc)
1 parent 68e1ba9 commit b80a470

File tree

6 files changed

+64
-11
lines changed

6 files changed

+64
-11
lines changed

buildSrc/src/main/groovy/org/elasticsearch/hadoop/gradle/buildtools/AntFixture.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,7 @@ class AntFixture extends AntTask implements Fixture {
239239
*/
240240
@Internal
241241
protected File getBaseDir() {
242-
return new File(project.buildDir, "fixtures/${name}")
242+
return new File(getProjectLayout().buildDirectory.getAsFile().get(), "fixtures/${name}")
243243
}
244244

245245
/** Returns the working directory for the process. Defaults to "cwd" inside baseDir. */

buildSrc/src/main/groovy/org/elasticsearch/hadoop/gradle/buildtools/AntTask.groovy

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import org.apache.tools.ant.DefaultLogger
2525
import org.apache.tools.ant.Project
2626
import org.gradle.api.DefaultTask
2727
import org.gradle.api.file.FileSystemOperations
28+
import org.gradle.api.file.ProjectLayout
2829
import org.gradle.api.tasks.TaskAction
2930

3031
import javax.inject.Inject
@@ -48,6 +49,11 @@ abstract class AntTask extends DefaultTask {
4849
throw new UnsupportedOperationException();
4950
}
5051

52+
@Inject
53+
protected ProjectLayout getProjectLayout() {
54+
throw new UnsupportedOperationException();
55+
}
56+
5157
@TaskAction
5258
final void executeTask() {
5359
AntBuilder ant = new AntBuilder()

buildSrc/src/main/groovy/org/elasticsearch/hadoop/gradle/fixture/hadoop/tasks/HadoopMRJob.groovy

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,13 @@ import org.gradle.api.GradleException
2626
import org.gradle.api.tasks.Input
2727
import org.gradle.api.tasks.InputFile
2828
import org.gradle.api.tasks.InputFiles
29+
import org.gradle.api.tasks.Internal
2930
import org.gradle.api.tasks.TaskAction
31+
import org.gradle.process.ExecOperations
3032
import org.gradle.process.ExecSpec
3133

34+
import javax.inject.Inject
35+
3236
import static org.elasticsearch.hadoop.gradle.util.ObjectUtil.unapplyString
3337

3438
abstract class HadoopMRJob extends AbstractClusterTask {
@@ -46,6 +50,14 @@ abstract class HadoopMRJob extends AbstractClusterTask {
4650
@Input
4751
Map<String, String> systemProperties = [:]
4852

53+
@Internal
54+
ExecOperations execOperations
55+
56+
@Inject
57+
HadoopMRJob(ExecOperations execOperations) {
58+
this.execOperations = execOperations
59+
}
60+
4961
void jobSetting(String key, Object value) {
5062
jobSettings.put(key, value)
5163
}
@@ -152,9 +164,9 @@ abstract class HadoopMRJob extends AbstractClusterTask {
152164
Map<String, String> finalEnv = collectEnvVars()
153165

154166
// Do command
155-
project.logger.info("Executing Command: " + commandLine)
156-
project.logger.info("Command Env: " + finalEnv)
157-
project.exec { ExecSpec spec ->
167+
logger.info("Executing Command: " + commandLine)
168+
logger.info("Command Env: " + finalEnv)
169+
execOperations.exec { ExecSpec spec ->
158170
spec.commandLine(commandLine)
159171
spec.environment(finalEnv)
160172
}

buildSrc/src/main/groovy/org/elasticsearch/hadoop/gradle/fixture/hadoop/tasks/HiveBeeline.groovy

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,13 @@ import org.gradle.api.GradleException
2626
import org.gradle.api.tasks.Input
2727
import org.gradle.api.tasks.InputFile
2828
import org.gradle.api.tasks.InputFiles
29+
import org.gradle.api.tasks.Internal
2930
import org.gradle.api.tasks.TaskAction
31+
import org.gradle.process.ExecOperations
3032
import org.gradle.process.ExecSpec
3133

34+
import javax.inject.Inject
35+
3236
import static org.elasticsearch.hadoop.gradle.fixture.hadoop.conf.SettingsContainer.FileSettings
3337

3438
abstract class HiveBeeline extends AbstractClusterTask {
@@ -40,6 +44,14 @@ abstract class HiveBeeline extends AbstractClusterTask {
4044
@Input
4145
String hivePrincipal
4246

47+
@Internal
48+
ExecOperations execOperations
49+
50+
@Inject
51+
HiveBeeline(ExecOperations execOperations) {
52+
this.execOperations = execOperations
53+
}
54+
4355
void libJars(File... files) {
4456
libJars.addAll(files)
4557
}
@@ -86,8 +98,8 @@ abstract class HiveBeeline extends AbstractClusterTask {
8698

8799
Map<String, String> environment = collectEnvVars()
88100

89-
project.logger.info("Using Environment: $environment")
90-
project.exec { ExecSpec spec ->
101+
logger.info("Using Environment: $environment")
102+
execOperations.exec { ExecSpec spec ->
91103
spec.setCommandLine(commandLine)
92104
spec.environment(environment)
93105
}

buildSrc/src/main/groovy/org/elasticsearch/hadoop/gradle/fixture/hadoop/tasks/SparkApp.groovy

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,11 @@ import org.gradle.api.tasks.InputFiles
2929
import org.gradle.api.tasks.Internal
3030
import org.gradle.api.tasks.Optional
3131
import org.gradle.api.tasks.TaskAction
32+
import org.gradle.process.ExecOperations
3233
import org.gradle.process.ExecSpec
3334

35+
import javax.inject.Inject
36+
3437
import static org.elasticsearch.hadoop.gradle.util.ObjectUtil.unapplyString
3538

3639
abstract class SparkApp extends AbstractClusterTask {
@@ -62,6 +65,14 @@ abstract class SparkApp extends AbstractClusterTask {
6265
@Input
6366
List<String> args = []
6467

68+
@Internal
69+
ExecOperations execOperations
70+
71+
@Inject
72+
SparkApp(ExecOperations execOperations) {
73+
this.execOperations = execOperations
74+
}
75+
6576
void deployMode(DeployMode mode) {
6677
deployMode = mode
6778
}
@@ -159,8 +170,8 @@ abstract class SparkApp extends AbstractClusterTask {
159170
Map<String, String> finalEnv = collectEnvVars()
160171

161172
// Do command
162-
project.logger.info("Command Env: " + finalEnv)
163-
project.exec { ExecSpec spec ->
173+
logger.info("Command Env: " + finalEnv)
174+
execOperations.exec { ExecSpec spec ->
164175
spec.commandLine(commandLine)
165176
spec.environment(finalEnv)
166177
}

qa/kerberos/build.gradle

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ import org.elasticsearch.hadoop.gradle.fixture.hadoop.tasks.HadoopMRJob
3030
import org.elasticsearch.hadoop.gradle.fixture.hadoop.tasks.HiveBeeline
3131
import org.elasticsearch.hadoop.gradle.fixture.hadoop.tasks.SparkApp
3232

33+
import javax.inject.Inject
34+
3335
apply plugin: 'es.hadoop.build'
3436
apply plugin: 'scala'
3537
apply plugin: HadoopFixturePlugin
@@ -88,6 +90,11 @@ dependencies {
8890
// Testing jars
8991
// =============================================================================
9092

93+
interface InjectedExecOps {
94+
@Inject //@javax.inject.Inject
95+
ExecOperations getExecOps()
96+
}
97+
9198
// Disable the integration tests for Kerberos until we can find a solution to the failures due to + sign
9299
// in the file path on CI.
93100
boolean disableTests = false
@@ -142,7 +149,9 @@ if (disableTests) {
142149
AntFixture kdcFixture = project.tasks.create('kdcFixture', AntFixture) {
143150
dependsOn project.configurations.kdcFixture
144151
executable = new File(project.runtimeJavaHome, 'bin/java')
145-
env 'CLASSPATH', "${ -> project.configurations.kdcFixture.asPath }"
152+
153+
def fixturefileCollection = project.configurations.kdcFixture
154+
env 'CLASSPATH', "${ -> fixturefileCollection.asPath }"
146155
waitCondition = { fixture, ant ->
147156
// the kdc wrapper writes the ports file when
148157
// it's ready, so we can just wait for the file to exist
@@ -235,10 +244,13 @@ if (disableTests) {
235244
File itestResourceDir = project.sourceSets.itest.resources.getSrcDirs().head()
236245

237246
Task setupUsers = project.tasks.create("setupUsers", DefaultTestClustersTask) {
247+
def injected = project.objects.newInstance(InjectedExecOps)
248+
238249
useCluster(testClusters.integTest)
250+
def executablePath = project.runtimeJavaHome.toString() + "/bin/java"
239251
doLast {
240-
project.javaexec {
241-
executable = project.runtimeJavaHome.toString() + "/bin/java"
252+
injected.getExecOps().javaexec {
253+
executable = executablePath
242254
mainClass = 'org.elasticsearch.hadoop.qa.kerberos.setup.SetupKerberosUsers'
243255
classpath = sourceSets.main.runtimeClasspath
244256
systemProperty('es.nodes', esAddress)

0 commit comments

Comments
 (0)