You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@polaris.apache.org by "ajantha-bhat (via GitHub)" <gi...@apache.org> on 2026/01/21 08:53:33 UTC
[PR] Catalog Migrator: Configure Apache Maven publishing [polaris-tools]
ajantha-bhat opened a new pull request, #135:
URL: https://github.com/apache/polaris-tools/pull/135
Add support for publishing artifacts to Apache Nexus repository with proper Maven Central metadata and signing capabilities.
Changes:
- Add nexus-publish-plugin to root `build.gradle.kts` with Apache repository configuration supporting both environment variables (`ASF_USERNAME`, `ASF_PASSWORD`) and Gradle properties
- Create `publishing.kt` with Maven publication setup including:
* Proper POM metadata (licenses, SCM, mailing lists, issue tracking)
* Support for publishing shadow JARs (CLI module)
* Conditional signing for release builds (-Prelease flag)
* Source and Javadoc JAR generation for non-shadow modules
- Configure build-conventions to apply publishing to all projects
- Update CLI module to apply shadow plugin
The configuration supports:
- Local testing: `./gradlew publishToMavenLocal`
- Apache release: `./gradlew publishToApache -Prelease -PuseGpgAgent`
- Staging management: `./gradlew closeAndReleaseApacheStagingRepository`
Published artifacts:
- org.apache.polaris.tools:iceberg-catalog-migrator-api (with sources, javadoc)
- org.apache.polaris.tools:iceberg-catalog-migrator-api-test (with sources, javadoc)
- org.apache.polaris.tools:iceberg-catalog-migrator-cli (shadow JAR)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@polaris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Catalog Migrator: Configure Apache Maven publishing [polaris-tools]
Posted by "ajantha-bhat (via GitHub)" <gi...@apache.org>.
ajantha-bhat commented on code in PR #135:
URL: https://github.com/apache/polaris-tools/pull/135#discussion_r2730255980
##########
iceberg-catalog-migrator/build.gradle.kts:
##########
@@ -77,3 +78,21 @@ tasks.named<RatTask>("rat").configure {
// Rat can't scan binary images
excludes.add("**/*.png")
}
+
+configure<NexusPublishExtension> {
+ transitionCheckOptions {
+ // Increase timeout from default 1 minute
+ maxRetries.set(360)
+ delayBetween.set(java.time.Duration.ofSeconds(10))
+ }
+ repositories {
+ create("apache") {
+ nexusUrl.set(URI.create("https://repository.apache.org/service/local/"))
+ snapshotRepositoryUrl.set(
+ URI.create("https://repository.apache.org/content/repositories/snapshots/")
+ )
+ username.set(System.getenv("ASF_USERNAME") ?: findProperty("asfNexusUsername") as String?)
+ password.set(System.getenv("ASF_PASSWORD") ?: findProperty("asfNexusPassword") as String?)
Review Comment:
Used the same plugin as main repo. So, it uses the same way now.
##########
iceberg-catalog-migrator/build.gradle.kts:
##########
@@ -77,3 +78,21 @@ tasks.named<RatTask>("rat").configure {
// Rat can't scan binary images
excludes.add("**/*.png")
}
+
+configure<NexusPublishExtension> {
+ transitionCheckOptions {
+ // Increase timeout from default 1 minute
+ maxRetries.set(360)
+ delayBetween.set(java.time.Duration.ofSeconds(10))
+ }
+ repositories {
+ create("apache") {
Review Comment:
updated as per main repo.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@polaris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Catalog Migrator: Configure Apache Maven publishing [polaris-tools]
Posted by "ajantha-bhat (via GitHub)" <gi...@apache.org>.
ajantha-bhat merged PR #135:
URL: https://github.com/apache/polaris-tools/pull/135
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@polaris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Catalog Migrator: Configure Apache Maven publishing [polaris-tools]
Posted by "ajantha-bhat (via GitHub)" <gi...@apache.org>.
ajantha-bhat commented on PR #135:
URL: https://github.com/apache/polaris-tools/pull/135#issuecomment-3783621149
Can I please get a review on this?
Maybe @snazy , @pingtimeout
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@polaris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Catalog Migrator: Configure Apache Maven publishing [polaris-tools]
Posted by "ajantha-bhat (via GitHub)" <gi...@apache.org>.
ajantha-bhat commented on PR #135:
URL: https://github.com/apache/polaris-tools/pull/135#issuecomment-3791151460
@snazy: Thanks a lot for the review.
> We have a bunch of independent projects in polaris-tools, so I think it's better to change the group-ID to org.apache.polaris.tools.iceberg-catalog-migrator so it has it's "own namespace" that doesn't conflict with other tools.
That makes sense — having a distinct namespace per tool is reasonable.
To stay aligned with Apache and Java package conventions, would you be open to using a dot-separated subgroup instead, e.g. `org.apache.polaris.tools.iceberg.catalog.migrator`, with `iceberg-catalog-migrator` remaining as the artifactId?
> I don't see that the signing-extension (the signatory) being configured - neither with a secret-key/password combination nor via the optional useGpgAgent project property.
Done. And verified Signing with new options.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@polaris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Catalog Migrator: Configure Apache Maven publishing [polaris-tools]
Posted by "ajantha-bhat (via GitHub)" <gi...@apache.org>.
ajantha-bhat commented on PR #135:
URL: https://github.com/apache/polaris-tools/pull/135#issuecomment-3806622245
@snazy: Thanks again for taking a look. Let me know if anything else needed for this.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@polaris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Catalog Migrator: Configure Apache Maven publishing [polaris-tools]
Posted by "snazy (via GitHub)" <gi...@apache.org>.
snazy commented on code in PR #135:
URL: https://github.com/apache/polaris-tools/pull/135#discussion_r2726573578
##########
iceberg-catalog-migrator/build.gradle.kts:
##########
@@ -77,3 +78,21 @@ tasks.named<RatTask>("rat").configure {
// Rat can't scan binary images
excludes.add("**/*.png")
}
+
+configure<NexusPublishExtension> {
+ transitionCheckOptions {
+ // Increase timeout from default 1 minute
+ maxRetries.set(360)
+ delayBetween.set(java.time.Duration.ofSeconds(10))
+ }
+ repositories {
+ create("apache") {
+ nexusUrl.set(URI.create("https://repository.apache.org/service/local/"))
+ snapshotRepositoryUrl.set(
+ URI.create("https://repository.apache.org/content/repositories/snapshots/")
+ )
+ username.set(System.getenv("ASF_USERNAME") ?: findProperty("asfNexusUsername") as String?)
+ password.set(System.getenv("ASF_PASSWORD") ?: findProperty("asfNexusPassword") as String?)
Review Comment:
This introduces a new, different way from how the creds are passed in the main Polaris repo, can you please align with that and use the same names.
##########
iceberg-catalog-migrator/build.gradle.kts:
##########
@@ -77,3 +78,21 @@ tasks.named<RatTask>("rat").configure {
// Rat can't scan binary images
excludes.add("**/*.png")
}
+
+configure<NexusPublishExtension> {
+ transitionCheckOptions {
+ // Increase timeout from default 1 minute
+ maxRetries.set(360)
+ delayBetween.set(java.time.Duration.ofSeconds(10))
+ }
+ repositories {
+ create("apache") {
Review Comment:
```suggestion
register("apache") {
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@polaris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Catalog Migrator: Configure Apache Maven publishing [polaris-tools]
Posted by "ajantha-bhat (via GitHub)" <gi...@apache.org>.
ajantha-bhat commented on PR #135:
URL: https://github.com/apache/polaris-tools/pull/135#issuecomment-3803143782
> I'd prefer a org.apache.polaris.tools.<tool-directory-name> convention for the group ID.
BTW: There's no convention for group IDs in Apache beside that it has to start with org.apache.<project-name>..
Ack. I assumed that it has to follow the rules of package name. You are right.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@polaris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Catalog Migrator: Configure Apache Maven publishing [polaris-tools]
Posted by "snazy (via GitHub)" <gi...@apache.org>.
snazy commented on PR #135:
URL: https://github.com/apache/polaris-tools/pull/135#issuecomment-3798195546
I'd prefer a `org.apache.polaris.tools.<tool-directory-name>` convention for the group ID.
BTW: There's no convention for group IDs in Apache beside that it has to _start_ with `org.apache.<project-name>.`.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@polaris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Catalog Migrator: Configure Apache Maven publishing [polaris-tools]
Posted by "ajantha-bhat (via GitHub)" <gi...@apache.org>.
ajantha-bhat commented on PR #135:
URL: https://github.com/apache/polaris-tools/pull/135#issuecomment-3821421208
ping @snazy or others.
Would love to close this soon. Let me know if anything else needed.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@polaris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org