1*e07d83d3SAndroid Build Coastguard Workerplugins { 2*e07d83d3SAndroid Build Coastguard Worker id "java-library" 3*e07d83d3SAndroid Build Coastguard Worker id "maven-publish" 4*e07d83d3SAndroid Build Coastguard Worker 5*e07d83d3SAndroid Build Coastguard Worker id "com.github.kt3k.coveralls" 6*e07d83d3SAndroid Build Coastguard Worker} 7*e07d83d3SAndroid Build Coastguard Worker 8*e07d83d3SAndroid Build Coastguard Workerdescription = "gRPC: All" 9*e07d83d3SAndroid Build Coastguard Worker 10*e07d83d3SAndroid Build Coastguard Workerdef subprojects = [ 11*e07d83d3SAndroid Build Coastguard Worker project(':grpc-api'), 12*e07d83d3SAndroid Build Coastguard Worker project(':grpc-auth'), 13*e07d83d3SAndroid Build Coastguard Worker project(':grpc-context'), 14*e07d83d3SAndroid Build Coastguard Worker project(':grpc-core'), 15*e07d83d3SAndroid Build Coastguard Worker project(':grpc-grpclb'), 16*e07d83d3SAndroid Build Coastguard Worker project(':grpc-netty'), 17*e07d83d3SAndroid Build Coastguard Worker project(':grpc-okhttp'), 18*e07d83d3SAndroid Build Coastguard Worker project(':grpc-protobuf'), 19*e07d83d3SAndroid Build Coastguard Worker project(':grpc-protobuf-lite'), 20*e07d83d3SAndroid Build Coastguard Worker project(':grpc-rls'), 21*e07d83d3SAndroid Build Coastguard Worker project(':grpc-services'), 22*e07d83d3SAndroid Build Coastguard Worker project(':grpc-servlet'), 23*e07d83d3SAndroid Build Coastguard Worker project(':grpc-servlet-jakarta'), 24*e07d83d3SAndroid Build Coastguard Worker project(':grpc-stub'), 25*e07d83d3SAndroid Build Coastguard Worker project(':grpc-testing'), 26*e07d83d3SAndroid Build Coastguard Worker project(':grpc-xds'), 27*e07d83d3SAndroid Build Coastguard Worker] 28*e07d83d3SAndroid Build Coastguard Worker 29*e07d83d3SAndroid Build Coastguard Workerfor (subproject in subprojects) { 30*e07d83d3SAndroid Build Coastguard Worker if (subproject == project) { 31*e07d83d3SAndroid Build Coastguard Worker continue 32*e07d83d3SAndroid Build Coastguard Worker } 33*e07d83d3SAndroid Build Coastguard Worker evaluationDependsOn(subproject.path) 34*e07d83d3SAndroid Build Coastguard Worker} 35*e07d83d3SAndroid Build Coastguard WorkerevaluationDependsOn(':grpc-interop-testing') 36*e07d83d3SAndroid Build Coastguard Worker 37*e07d83d3SAndroid Build Coastguard Workerdependencies { 38*e07d83d3SAndroid Build Coastguard Worker api subprojects.minus([project(':grpc-protobuf-lite')]) 39*e07d83d3SAndroid Build Coastguard Worker implementation libraries.guava.jre // JRE required by transitive protobuf-java-util 40*e07d83d3SAndroid Build Coastguard Worker} 41*e07d83d3SAndroid Build Coastguard Worker 42*e07d83d3SAndroid Build Coastguard Workertasks.named("javadoc").configure { 43*e07d83d3SAndroid Build Coastguard Worker classpath = files(subprojects.collect { subproject -> 44*e07d83d3SAndroid Build Coastguard Worker subproject.javadoc.classpath 45*e07d83d3SAndroid Build Coastguard Worker }) 46*e07d83d3SAndroid Build Coastguard Worker for (subproject in subprojects) { 47*e07d83d3SAndroid Build Coastguard Worker if (subproject == project) { 48*e07d83d3SAndroid Build Coastguard Worker continue; 49*e07d83d3SAndroid Build Coastguard Worker } 50*e07d83d3SAndroid Build Coastguard Worker source subproject.javadoc.source 51*e07d83d3SAndroid Build Coastguard Worker options.links subproject.javadoc.options.links.toArray(new String[0]) 52*e07d83d3SAndroid Build Coastguard Worker } 53*e07d83d3SAndroid Build Coastguard Worker} 54*e07d83d3SAndroid Build Coastguard Worker 55*e07d83d3SAndroid Build Coastguard Workertasks.named("jacocoTestReport").configure { 56*e07d83d3SAndroid Build Coastguard Worker dependsOn(subprojects.jacocoTestReport.dependsOn) 57*e07d83d3SAndroid Build Coastguard Worker dependsOn(project(':grpc-interop-testing').jacocoTestReport.dependsOn) 58*e07d83d3SAndroid Build Coastguard Worker executionData.from files(subprojects.jacocoTestReport.executionData) 59*e07d83d3SAndroid Build Coastguard Worker .plus(project(':grpc-interop-testing').jacocoTestReport.executionData) 60*e07d83d3SAndroid Build Coastguard Worker .filter { f -> f.exists() } 61*e07d83d3SAndroid Build Coastguard Worker reports { 62*e07d83d3SAndroid Build Coastguard Worker xml.required = true 63*e07d83d3SAndroid Build Coastguard Worker html.required = true 64*e07d83d3SAndroid Build Coastguard Worker } 65*e07d83d3SAndroid Build Coastguard Worker 66*e07d83d3SAndroid Build Coastguard Worker subprojects.each { subproject -> 67*e07d83d3SAndroid Build Coastguard Worker additionalSourceDirs.from(subproject.jacocoTestReport.additionalSourceDirs) 68*e07d83d3SAndroid Build Coastguard Worker sourceDirectories.from(subproject.jacocoTestReport.sourceDirectories) 69*e07d83d3SAndroid Build Coastguard Worker classDirectories.from(subproject.jacocoTestReport.classDirectories) 70*e07d83d3SAndroid Build Coastguard Worker } 71*e07d83d3SAndroid Build Coastguard Worker} 72*e07d83d3SAndroid Build Coastguard Worker 73*e07d83d3SAndroid Build Coastguard Workercoveralls { 74*e07d83d3SAndroid Build Coastguard Worker sourceDirs = subprojects.sourceSets.main.allSource.srcDirs.flatten() 75*e07d83d3SAndroid Build Coastguard Worker} 76*e07d83d3SAndroid Build Coastguard Worker 77*e07d83d3SAndroid Build Coastguard Workertasks.named("coveralls").configure { dependsOn tasks.named("jacocoTestReport") } 78