-
Notifications
You must be signed in to change notification settings - Fork 78
Description
As of now Linkage Monitor run linkage check with individual libraries with "-SNAPSHOT" suffix. This causes problem in google-cloud-java update to use newer version of gax. googleapis/google-cloud-java#6133
https://source.cloud.google.com/results/invocations/fae7cf9e-75bb-4094-98ae-854fbe6cfe01
Because gax is not part of google-cloud-java, Linkage Monitor does not pick up newer gax.
google-cloud-bom is in google-cloud-java repository. https://github.com/googleapis/google-cloud-java/tree/master/google-cloud-bom.
[INFO] --- maven-install-plugin:2.4:install (default-install) @ google-cloud-bom ---
[INFO] Installing /tmpfs/src/github/google-cloud-java/google-cloud-bom/pom.xml to /root/.m2/repository/com/google/cloud/google-cloud-bom/0.106.1-alpha-SNAPSHOT/google-cloud-bom-0.106.1-alpha-SNAPSHOT.pom
Google-cloud-bom is imported from https://github.com/GoogleCloudPlatform/cloud-opensource-java/blob/master/boms/cloud-oss-bom/pom.xml .
Solution
Linkage Monitor should update BOM entries rather than individual libraries.
Challenge
We want the variable interpolated but dependency management section import intact when replacing elements of a BOM.
https://stackoverflow.com/questions/4838591/is-there-a-library-for-reading-maven2-3-pom-xml-files
Maven Model Builder https://maven.apache.org/maven-model-builder/ provides 2 phases. Split model building into 2 phases and replace elements of BOM between the 2 phases.