-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Description
Let's setup a job for java-maps-* artifacts release. Currently we have java-maps-addressvalidation and java-maps-routing and around 6 artifacts under them. As of now, the modules are excluded by stage.sh so that artifacts with "com.google.maps" groupID do not go to the publishing host google.oss.sonatype.org.
| excludedMapsModule=$(find java-maps-* -name 'pom.xml' \ |
~/google-cloud-java $ find java-maps-* -name 'pom.xml' \
|sed -e 's/^/!/' -e 's|/pom.xml$||' |xargs |sed -e 's/ /,/g'
!java-maps-addressvalidation,!java-maps-addressvalidation/grpc-google-maps-addressvalidation-v1,!java-maps-addressvalidation/google-maps-addressvalidation-bom,!java-maps-addressvalidation/google-maps-addressvalidation,!java-maps-addressvalidation/proto-google-maps-addressvalidation-v1,!java-maps-routing/google-maps-routing-bom,!java-maps-routing,!java-maps-routing/google-maps-routing,!java-maps-routing/proto-google-maps-routing-v2,!java-maps-routing/grpc-google-maps-routing-v2
Scope
Here are the Maven modules in the scope:
- java-maps-addressvalidation
- java-maps-addressvalidation/google-maps-addressvalidation
- java-maps-addressvalidation/grpc-google-maps-addressvalidation-v1
- java-maps-addressvalidation/proto-google-maps-addressvalidation-v1
- java-maps-addressvalidation/google-maps-addressvalidation-bom
- java-maps-routing
- java-maps-routing/google-maps-routing
- java-maps-routing/proto-google-maps-routing-v2
- java-maps-routing/grpc-google-maps-routing-v2
- java-maps-routing/google-maps-routing-bom
Publishing Host and Group ID
The challenge (troubleshooting in OSSRH-87007) was that we have 2 publishing hosts and a groupID can only belong to one of them. The current setup:
- "com.google.maps" and "com.google.maps.api" groupID => oss.sonatype.org publishing host
- "com.google.cloud" and "com.google.api" groupID => google.oss.sonatype.org publishing host
159f41f was the commit I used on Dec 14th release (http://sponge2/907014e9-7270-4bdb-8122-f1d95c67a278). (One of the artifacts was https://search.maven.org/artifact/com.google.maps.api.grpc/grpc-google-maps-addressvalidation-v1/0.1.0/jar; notice the groupID is com.google.maps.api in 2a76495).
This script change and groupID change have not been merged to the main branch. Therefore I created this GitHub issue.
Todo
- Confirm the Maps team about the Dec 14th release. Is it really what they want?
- For the "grpc-" and "proto-" modules under java-maps-* modules, rename group ID to "com.google.maps.api". This makes it easy to have consistent publishing hosts under java-maps-* modules; otherwise "grpc-" and "proto-" modules would use "google.oss.sonatype.org" and the google-maps-XXX artifacts would use "oss.sonatype.org".
- Create a script to publish the artifacts under "java-maps-*" modules (currently 2)
- Setup a new Kokoro job as a child job of cloud-devrel/client-libraries/java/google-cloud-java/release/stage job.
Consideration
We may add other libraries outside Google Cloud organization but not in Google Maps. Let's design the flow and name the script and job to meet future needs.