Closed suztomo closed 4 years ago
@chingor13 Do you see the following statement correct (or not)?
The import_boms branch is trying to add all gRPC artifacts (via grpc-bom) into google-cloud-bom's dependencyManagement section.
I disagree that it makes sense to skip these two artifacts. If they're not supposed to be used by users, google-cloud-java shouldn't import them and grpc-bom shouldn't publish them.
I don't immediately see where that branch is pulling in grpc-bom. Can you give me a line number?
I need to dig the pom parent/import hierarchy but here is the effective pom containing grpc-benchmark and grpc-interop-testing. https://paste.googleplex.com/4906849163804672
It turned out that it was unexpected import of grpc-bom.
More specifically, this was a true positive. The branch was importing the wrong artifact, google-cloud-automl instead of google-cloud-automl-bom. The linkage monitor did exactly what it was supposed to do here.
Jeff's import_boms branch is trying to add all gRPC artifacts into google-cloud-bom.
Among these gRPC artifacts, grpc-benchmarks and grpc-interop-testing have linkage errors in their transitive dependencies. They appear as new linkage error when Linkage Monitor runs.
https://fusion.corp.google.com/runanalysis/buildlogs/prod%3Acloud-devrel%2Fclient-libraries%2Fjava%2Fgoogle-cloud-java%2Fpresubmit%2Flinkage-monitor/prod%3Acloud-devrel%2Fclient-libraries%2Fjava%2Fgoogle-cloud-java%2Fpresubmit%2Flinkage-monitor/KOKORO/b80fa904-056f-409c-99fe-c01a3e3f2776/0/prod%3Acloud-devrel%2Fclient-libraries%2Fjava%2Fgoogle-cloud-java%2Fpresubmit%2Flinkage-monitor/Targets
What can we do?
Linkage Monitor to ignore io.grpc:grpc-benchmarks and io.grpc:grpc-interop-testing
If they're not supposed to be used by users, it makes sense to skip the two artifacts.