| // Add dependency on the protobuf plugin |
| buildscript { |
| repositories { |
| maven { // The google mirror is less flaky than mavenCentral() |
| url "https://maven-central.storage-download.googleapis.com/repos/central/data/" } |
| gradlePluginPortal() |
| } |
| dependencies { |
| classpath libraries.protobuf_plugin |
| classpath 'com.github.jengelman.gradle.plugins:shadow:2.0.4' |
| } |
| } |
| |
| apply plugin: 'com.github.johnrengelman.shadow' |
| |
| description = "gRPC: XDS plugin" |
| |
| [compileJava].each() { |
| it.options.compilerArgs += [ |
| // valueOf(int) in RoutingPriority has been deprecated |
| "-Xlint:-deprecation", |
| ] |
| } |
| |
| dependencies { |
| compile project(':grpc-protobuf'), |
| project(':grpc-stub'), |
| project(':grpc-core') |
| compile (libraries.protobuf_util) { |
| // prefer 26.0-android from libraries instead of 20.0 |
| exclude group: 'com.google.guava', module: 'guava' |
| } |
| |
| testCompile project(':grpc-core').sourceSets.test.output |
| |
| compileOnly libraries.javax_annotation |
| |
| testCompile project(':grpc-testing') |
| signature "org.codehaus.mojo.signature:java17:1.0@signature" |
| } |
| |
| apply plugin: 'com.google.protobuf' |
| sourceSets { |
| main { |
| proto { |
| srcDir 'third_party/envoy/src/main/proto' |
| srcDir 'third_party/protoc-gen-validate/src/main/proto' |
| } |
| } |
| } |
| |
| configureProtoCompilation() |
| |
| jar { |
| classifier = 'original' |
| } |
| |
| shadowJar { |
| classifier = null |
| dependencies { |
| include(project(':grpc-xds')) |
| } |
| relocate 'io.envoyproxy', 'io.grpc.xds.shaded.io.envoyproxy' |
| relocate 'validate', 'io.grpc.xds.shaded.com.lyft.pgv.validate' |
| exclude "**/*.proto" |
| } |
| |
| publishing { |
| publications { |
| maven(MavenPublication) { |
| artifact shadowJar |
| artifacts.removeAll { it.classifier == 'original' } |
| } |
| } |
| } |