Skip to content

Commit b348479

Browse files
authored
interop-testing: set the right classpath for startscripts
Currently the classpath for all startscripts in interop-testing includes alpnagent and grpc-xds, even if a lot of startscripts don't need them. Made a change to only include alpnagent or grpc-xds when a startscript really needs it.
1 parent ef44795 commit b348479

File tree

1 file changed

+15
-12
lines changed

1 file changed

+15
-12
lines changed

interop-testing/build.gradle

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ startScripts.enabled = false
1111

1212
configurations {
1313
alpnagent
14+
xdsRuntime
1415
}
1516

1617
evaluationDependsOn(project(':grpc-context').path)
@@ -32,6 +33,7 @@ dependencies {
3233
runtime libraries.opencensus_impl,
3334
libraries.netty_tcnative,
3435
project(':grpc-grpclb')
36+
xdsRuntime project(path: ':grpc-xds', configuration: 'shadow')
3537
testCompile project(':grpc-context').sourceSets.test.output,
3638
libraries.mockito
3739
alpnagent libraries.jetty_alpn_agent
@@ -61,8 +63,7 @@ task test_client(type: CreateStartScripts) {
6163
"-javaagent:JAVAAGENT_APP_HOME" + configurations.alpnagent.singleFile.name
6264
]
6365
outputDir = new File(project.buildDir, 'tmp')
64-
classpath = jar.outputs.files + configurations.runtime
65-
dependencies { runtime configurations.alpnagent }
66+
classpath = startScripts.classpath
6667
doLast {
6768
unixScript.text = unixScript.text.replace('JAVAAGENT_APP_HOME', '\$APP_HOME/lib/')
6869
windowsScript.text = windowsScript.text.replace('JAVAAGENT_APP_HOME', '%APP_HOME%\\lib\\')
@@ -73,21 +74,21 @@ task test_server(type: CreateStartScripts) {
7374
mainClassName = "io.grpc.testing.integration.TestServiceServer"
7475
applicationName = "test-server"
7576
outputDir = new File(project.buildDir, 'tmp')
76-
classpath = jar.outputs.files + configurations.runtime
77+
classpath = startScripts.classpath
7778
}
7879

7980
task reconnect_test_client(type: CreateStartScripts) {
8081
mainClassName = "io.grpc.testing.integration.ReconnectTestClient"
8182
applicationName = "reconnect-test-client"
8283
outputDir = new File(project.buildDir, 'tmp')
83-
classpath = jar.outputs.files + configurations.runtime
84+
classpath = startScripts.classpath
8485
}
8586

8687
task stresstest_client(type: CreateStartScripts) {
8788
mainClassName = "io.grpc.testing.integration.StressTestClient"
8889
applicationName = "stresstest-client"
8990
outputDir = new File(project.buildDir, 'tmp')
90-
classpath = jar.outputs.files + configurations.runtime
91+
classpath = startScripts.classpath
9192
defaultJvmOpts = [
9293
"-verbose:gc",
9394
"-XX:+PrintFlagsFinal"
@@ -98,14 +99,14 @@ task http2_client(type: CreateStartScripts) {
9899
mainClassName = "io.grpc.testing.integration.Http2Client"
99100
applicationName = "http2-client"
100101
outputDir = new File(project.buildDir, 'tmp')
101-
classpath = jar.outputs.files + configurations.runtime
102+
classpath = startScripts.classpath
102103
}
103104

104105
task grpclb_long_lived_affinity_test_client(type: CreateStartScripts) {
105106
mainClassName = "io.grpc.testing.integration.GrpclbLongLivedAffinityTestClient"
106107
applicationName = "grpclb-long-lived-affinity-test-client"
107108
outputDir = new File(project.buildDir, 'tmp')
108-
classpath = jar.outputs.files + configurations.runtime
109+
classpath = startScripts.classpath
109110
defaultJvmOpts = [
110111
"-Dio.grpc.internal.DnsNameResolverProvider.enable_grpclb=true",
111112
"-Dio.grpc.internal.DnsNameResolverProvider.enable_service_config=true"
@@ -115,18 +116,15 @@ task grpclb_long_lived_affinity_test_client(type: CreateStartScripts) {
115116
task xds_test_client(type: CreateStartScripts) {
116117
mainClassName = "io.grpc.testing.integration.XdsTestClient"
117118
applicationName = "xds-test-client"
118-
dependencies {
119-
runtime project(path: ':grpc-xds', configuration: 'shadow')
120-
}
121119
outputDir = new File(project.buildDir, 'tmp')
122-
classpath = startScripts.classpath
120+
classpath = startScripts.classpath + configurations.xdsRuntime
123121
}
124122

125123
task xds_test_server(type: CreateStartScripts) {
126124
mainClassName = "io.grpc.testing.integration.XdsTestServer"
127125
applicationName = "xds-test-server"
128126
outputDir = new File(project.buildDir, 'tmp')
129-
classpath = jar.outputs.files + configurations.runtime
127+
classpath = startScripts.classpath
130128
}
131129

132130
applicationDistribution.into("bin") {
@@ -141,6 +139,11 @@ applicationDistribution.into("bin") {
141139
fileMode = 0755
142140
}
143141

142+
applicationDistribution.into("lib") {
143+
from(configurations.alpnagent)
144+
from(configurations.xdsRuntime)
145+
}
146+
144147
publishing {
145148
publications {
146149
maven(MavenPublication) {

0 commit comments

Comments
 (0)