embulk / embulk-input-jdbc

MySQL, PostgreSQL, Redshift and generic JDBC input plugins for Embulk
Other
102 stars 74 forks source link

Upload to Maven Central instead of Bintray #206

Closed vietnguyen-td closed 3 years ago

vietnguyen-td commented 3 years ago

Change the releasing Bintray to Maven Central

dmikurube commented 3 years ago

@hito4t As in this PR, and I have mentioned on Twitter, we're going to release its JARs to Maven Central, instead of Bintray, as Bintray is sunsetting. https://jfrog.com/blog/into-the-sunset-bintray-jcenter-gocenter-and-chartcenter/

But, we are a bit wondering about releasing in Maven Central now, especially about permissions.

Maven Central's (Sonatype OSSRH's) release permissions are managed per the domain name level of a Maven group name. So, release permissions can be managed only for the level of org.embulk level, not fine-grained like org.embulk.input.jdbc. Once we assign a release permission on org.embulk to you, you'll have a permission to release everything of Embulk.

Of course, you're welcome to join the Embulk core maintainers if you want :), but you may not want. If not, having an unnecessary permission is known to be a bad habit in general...

Can we hear your thoughts? We (TD members) can do the release on our side for the time being for v0.12.0 to delay the decision.

At the same time, we may want to revisit your #171 (and maybe similar for Oracle) to simplify the release permission issues.


At the same time, Maven Central needs pom.xml to include a developers section, such as embulk-input-s3 having: https://github.com/embulk/embulk-input-s3/pull/99/files

Those names and addresses are listed like: https://mvnrepository.com/artifact/org.embulk/embulk-input-s3/0.5.2

Can we pick up your name and address from the Git commit log? (Or, do you prefer another name as your name in the Git log look hito4t, or in initial.)

If you want to be anonymized, we can exclude, and make it only with our names. But we wanted to nominate you as you've made biggest commits on embulk-input-jdbc!

hito4t commented 3 years ago

@dmikurube Thank you for your comment!

Of course, you're welcome to join the Embulk core maintainers if you want :), but you may not want. If not, having an unnecessary permission is known to be a bad habit in general...

I don't want to have the permission. As you wrote, I shoudn't have an unnecessary permission.

At the same time, we may want to revisit your #171 (and maybe similar for Oracle) to simplify the release permission issues.

OK. When can we separate the plugins? I think embulk-input-jdbc core should be released to the maven central repository to separate plugins.

Can we pick up your name and address from the Git commit log? (Or, do you prefer another name as your name in the Git log look hito4t, or in initial.)

Please see my github profile (I updated it recently).

dmikurube commented 3 years ago

Thanks, @hito4t -san!

I don't want to have the permission. As you wrote, I shoudn't have an unnecessary permission.

Sure! Then we'll do the release operations.

OK. When can we separate the plugins? I think embulk-input-jdbc core should be released to the maven central repository to separate plugins.

Yeah, the order may matter... How about :

1) We release only -jdbc, -mysql, -postgresql, and -redshift to Maven Central and RubyGems.org. We don't remove -db2 and -oracle from this Git repository as of now, but not to release. 2) You (or we -- depending on where) create a separated repository (or repositories) for -db2 and -oracle in some way. 3) Then, you'll release them depending on embulk-input-jdbc:0.12.0 from Maven Central, which is released in (1). 4) We'll remove -db2 and -oracle from this repository.

We're wondering about -sqlserver. We (TD) are willing to stay in maintaining embulk-input-sqlserver as we use it actively now, but it started from you. Let us delegate the decision up to you how to deal with -sqlserver.

Also, I guess we have two options to split. A) Split embulk-input-db2/oracle(/sqlserver) in https://github.com/embulk to share management permissions. B) Split embulk-input-db2/oracle(/sqlserver) in https://github.com/hito4t, and we (TD) may sometimes send pull requests to you.

(B) may be better for -db2 and -oracle so that you own permissions, especially to release? For -sqlserver, either is fine for us.

Eventually, I guess (1) can be achieved this week once the PRs are reviewed. (We may still need 1-2 more administrative PRs, though.)

Please see my github profile (I updated it recently).

Okay, will include your name from there.

hito4t commented 3 years ago

@dmikurube

  1. We release only -jdbc, -mysql, -postgresql, and -redshift to Maven Central and RubyGems.org. We don't remove -db2 and -oracle from this Git repository as of now, but not to release.
  2. You (or we -- depending on where) create a separated repository (or repositories) for -db2 and -oracle in some way.
  3. Then, you'll release them depending on embulk-input-jdbc:0.12.0 from Maven Central, which is released in (1).
  4. We'll remove -db2 and -oracle from this repository.

OK, it will go well.

We're wondering about -sqlserver. We (TD) are willing to stay in maintaining embulk-input-sqlserver as we use it actively now, but it started from you. Let us delegate the decision up to you how to deal with -sqlserver.

I think it's better to separate the plugins into as few repositories as possible, because that would make it easier to maintain plugins. embulk-input-sqlserver should stay with embuk-input-jdbc because you (TD) use it actively now.

A) Split embulk-input-db2/oracle(/sqlserver) in https://github.com/embulk to share management permissions. B) Split embulk-input-db2/oracle(/sqlserver) in https://github.com/hito4t, and we (TD) may sometimes send pull requests to you.

(B) may be better for -db2 and -oracle so that you own permissions, especially to release? For -sqlserver, either is fine for us.

As you wrote, B may be better. I'll create a new repository for -db2 and -oracle in https://github.com/hito4t .

dmikurube commented 3 years ago

Sure, okay, then I'll start releasing -jdbc, -mysql, -postgresql, -redshift, and -sqlserver 0.12.0 once this (#206), #198, #210, #211, and #212 are approved, and merged!

dmikurube commented 3 years ago

Thanks! Merging this!

dmikurube commented 3 years ago

@hito4t @vietnguyen-td The following artifacts are published in Maven Central!