| apply plugin: 'com.github.kt3k.coveralls' |
| |
| description = "gRPC: All" |
| |
| buildscript { |
| repositories { |
| mavenCentral() |
| } |
| dependencies { |
| classpath 'org.kt3k.gradle.plugin:coveralls-gradle-plugin:2.0.1' |
| } |
| } |
| |
| // Make sure that no transitive dependencies are included. |
| configurations.compile.transitive = false |
| |
| def subprojects = [ |
| project(':grpc-auth'), |
| project(':grpc-core'), |
| project(':grpc-netty'), |
| project(':grpc-okhttp'), |
| project(':grpc-protobuf'), |
| project(':grpc-protobuf-nano'), |
| project(':grpc-stub'), |
| ] |
| |
| for (subproject in rootProject.subprojects) { |
| if (subproject == project) { |
| continue |
| } |
| evaluationDependsOn(subproject.path) |
| } |
| |
| dependencies { |
| compile subprojects |
| } |
| |
| // Create a fat jar containing only the direct dependencies |
| jar { |
| from { |
| configurations.compile.collect { |
| it.isDirectory() ? it : zipTree(it) |
| } |
| } |
| } |
| |
| javadoc { |
| classpath = files(subprojects.collect { subproject -> |
| subproject.javadoc.classpath |
| }) |
| for (subproject in subprojects) { |
| if (subproject == project) { |
| continue; |
| } |
| source subproject.javadoc.source |
| options.links subproject.javadoc.options.links.toArray(new String[0]) |
| } |
| exclude 'io/grpc/internal/**' |
| } |
| |
| task jacocoMerge(type: JacocoMerge) { |
| destinationFile = file("${buildDir}/jacoco/test.exec") |
| executionData = files(subprojects.jacocoTestReport.executionData) |
| .plus(project(':grpc-interop-testing').jacocoTestReport.executionData) |
| .filter { f -> f.exists() } |
| } |
| |
| jacocoTestReport { |
| dependsOn(jacocoMerge) |
| reports { |
| xml.enabled = true |
| html.enabled = true |
| } |
| |
| additionalSourceDirs = files(subprojects.sourceSets.main.allSource.srcDirs) |
| sourceDirectories = files(subprojects.sourceSets.main.allSource.srcDirs) |
| classDirectories = files(subprojects.sourceSets.main.output) |
| classDirectories = files(classDirectories.files.collect { |
| fileTree(dir: it, |
| exclude: ['**/io/grpc/okhttp/internal/**']) |
| }) |
| } |
| |
| coveralls { |
| sourceDirs = subprojects.sourceSets.main.allSource.srcDirs.flatten() |
| } |
| |
| tasks.coveralls { |
| dependsOn(jacocoTestReport) |
| } |