-
Notifications
You must be signed in to change notification settings - Fork 193
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
Migrated to new Shipkit plugins #36
Conversation
- enables concurrent releases - avoid unnecessary version bump commits - enables using higher version of Gradle - more info: https://github.com/mockito/shipkit/blob/master/docs/design-specs/future-shipkit.md - removed read-only token from checked-in files (even though it is read read-only, it should not be exposed to unexpected users/bots)
Friendly ping! |
Thanks @mockitoguy for this patch! I see some Maven integration configurations being added. Does this change anything compared to our previous workflow for publishing artifacts? So far publishing Maven artifacts had to be manually triggered. |
@wmoustafa, are you referring to publishing to Maven Central? Answer: publishing to Maven Central is not changed by this PR - you still need to trigger this manually. This PR keeps your current workflow but updates the plugins. The old org.shipkit.java plugin is archived and no longer maintained. |
Thanks @mockitoguy! |
This change caused an issue. All jars' .asc files are missing in published package. Right now, we cannot publish the package to Maven center anymore since v1.0.20 |
@mockitoguy Szczepan, do you know how can we quickly fix the 'missing .asc files' issue? |
I will take a look tomorrow morning. Sorry about the issue. (If you are blocked you can revert my change) |
@kxu1026, have you tried to publish to Maven Central? What happens? The "asc" files are created on the server side by Bintray. For some reason Bintray no longer creates those files. I'm not sure why. The plugin change is not causing this - if you revert to the old shipkit I suspect the result will be the same. |
@mockitoguy I have reverted this change in #44, and the files can be generated. Please let us know if there is a way to use the new plugin while maintaining the artifact signing files. |
Hey @wmoustafa, thank you for fixing the problem and sorry for this issue! We will need to update the plugins by May because JFrog is sunsetting Bintray product. When I have some cycles, I'll look into it. |
Thanks @mockitoguy! Which artifact repository will Shipkit integrate with instead of Bintray? |
@mockitoguy, Friendly ping about the future of Shipkit. Do we know which repository it will publish to going forward? |
Hey! TLDR; we'll publish directly to Maven Central (Sonatype OSSRH) New Shipkit plugins are decoupled from repository hosting solution. This means that it's much easier to configure Shipkit to work with any repo. This PR attempted to migrate to the new Shipkit plugins but we hit the issue with *asc files. I should be able to look into linkedIn/coral sometime in Feb. |
Thanks @mockitoguy! Since we are approaching the deadline, I am wondering if we the new plugin is ready, or should we depend on manual/self publishing of artifacts to Maven Central? |
@mockitoguy, friendly ping. |
Hey, @wmoustafa, I have a demo/reference project that performs publications to Maven Central on every change: https://github.com/shipkit/shipkit-demo So the Gradle plugins fully support this use case right now. Are you OK to publish every change to Maven Central? I noticed that a subset of Coral versions are published to Maven Central. |
Thanks @mockitoguy! Publishing on every change is okay. I have been working on adapting the legacy Shipkit plugin integration in Coral so that it publishes to Maven Central instead by following this Shipkit guide. I have published this approach in #51. It would be great to have your feedback on this on this patch while we work on integrating the demo above. |
@wmoustafa, OK to migrate from Travis CI -> GitHub Actions? Actions are faster, better and future proof. Also, I found it difficult to keep PGP key in Travis env variables (Travis had issues parsing PGP key value). It will be simpler to migrate off Bintray if we also migrate from Travis ;-) |
This change is fully backwards compatible, please review!
Tested by:
./gradlew publishToMavenLocal
with the old code, generated all artifacts and poms, then I ran the new code and compared the artifacts and poms./gradlew githubRelease
-> released to GitHub: https://github.com/mockitoguy/coral/releases/tag/v1.0.19./gradlew bintrayUpload
-> released to Bintray: https://bintray.com/shipkit/examples/coral/1.0.19