1plugins { 2 id "application" 3 id "java" 4 5 id "com.google.protobuf" 6 id 'com.google.cloud.tools.jib' 7 id "ru.vyarus.animalsniffer" 8} 9 10description = "gRPC: Istio Interop testing" 11 12configurations { 13 alpnagent 14} 15 16dependencies { 17 implementation project(':grpc-core'), 18 project(':grpc-netty'), 19 project(':grpc-protobuf'), 20 project(':grpc-services'), 21 project(':grpc-stub'), 22 project(':grpc-testing'), 23 project(':grpc-xds') 24 25 compileOnly libraries.javax.annotation 26 27 runtimeOnly libraries.netty.tcnative, 28 libraries.netty.tcnative.classes 29 testImplementation testFixtures(project(':grpc-context')), 30 testFixtures(project(':grpc-api')), 31 testFixtures(project(':grpc-core')), 32 libraries.mockito.core, 33 libraries.junit, 34 libraries.truth 35 alpnagent libraries.jetty.alpn.agent 36 37 signature libraries.signature.java 38} 39 40sourceSets { 41 main { 42 proto { 43 srcDir 'third_party/istio/src/main/proto' 44 } 45 } 46} 47 48configureProtoCompilation() 49 50import net.ltgt.gradle.errorprone.CheckSeverity 51 52tasks.named("compileJava").configure { 53 // This isn't a library; it can use beta APIs 54 options.errorprone.check("BetaApi", CheckSeverity.OFF) 55} 56 57 58// For releasing to Docker Hub 59jib { 60 from.image = "gcr.io/distroless/java:8" 61 container { 62 ports = ['50051'] 63 mainClass="io.grpc.testing.istio.EchoTestServer" 64 } 65 outputPaths { 66 tar = 'build/istio-echo-server.tar' 67 digest = 'build/istio-echo-server.digest' 68 imageId = 'build/istio-echo-server.id' 69 } 70} 71