Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upload to Maven Central instead of Bintray #206

Merged
merged 1 commit into from
May 31, 2021
Merged

Conversation

vietnguyen-td
Copy link
Contributor

Change the releasing Bintray to Maven Central

@dmikurube dmikurube added this to the v0.12.0 milestone May 19, 2021
@dmikurube dmikurube requested a review from hito4t May 19, 2021 08:44
Copy link
Member

@dmikurube dmikurube left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks good to me. But please wait for checking with @hito4t before merging.

Maven Central actually needs a developers section in pom.xml. I'll try to add it in next PR(s).

@dmikurube
Copy link
Member

@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
Copy link
Contributor

hito4t commented May 24, 2021

@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
Copy link
Member

dmikurube commented May 24, 2021

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
Copy link
Contributor

hito4t commented May 28, 2021

@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
Copy link
Member

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
Copy link
Member

Thanks! Merging this!

@dmikurube dmikurube merged commit 09cbd00 into master May 31, 2021
@dmikurube dmikurube deleted the upload-to-MavenCentral branch May 31, 2021 06:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants