Publish Maven Build To Central
Currently, there is no automated feature to publish the BIRT-Runtime to Maven. Wouldn't it be nice to fix this.
@wimjongman Do you or anyone you know have experiencing setting this up? What we would like is to be able to automatically deploy/publish the Runtime to Maven Central. To date, we have been doing this by hand, it would be great if we could do this in the easiest way possible. @SteveSchafer-Innovent
I have tried once and failed...
However, it seems doable with some focus.
https://docs.github.com/en/actions/guides/publishing-java-packages-with-maven https://dzone.com/articles/publish-your-artifacts-to-maven-central
Thanks Wim,
We will take a look in the upcoming days using those links.
Scott
On Thu, Apr 29, 2021 at 1:46 PM Wim Jongman @.***> wrote:
I have tried once and failed...
However, it seems doable with some focus.
https://docs.github.com/en/actions/guides/publishing-java-packages-with-maven https://dzone.com/articles/publish-your-artifacts-to-maven-central
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/eclipse/birt/issues/625#issuecomment-829501061, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABKF2BOJ6UWXBORNJMMBOLLTLGSO5ANCNFSM4ZYBQNVA .
-- Scott Rosenbaum Innovent Solutions, Inc. 612 220 6006 cell
Hello there, we are currently working on integrating BIRT into a private service for report generation. We noticed that there is currently no public build release of the BIRT runtime.
We were able to build the BIRT runtime locally and will probably integrate the runtime by using the build jars as dependencies.
Can we help you, in order to get a public build release on Maven Central?
Can we help you, in order to get a public build release on Maven Central?
Yes, that would be great. You can create PR's referencing this issue.
What are the release problems?
We could setup a release workflow, where a release is uploaded to Github first and find issues with the build process that way.
We have done it for our project as well: https://github.com/minova-afis/aero.minova.core.application.system/blob/master/.github/workflows/release.yml
The only thing needed to my knowledge are a username and an access token for Github, as a secret in the project.
@splitcells, @pipebaum can we re-start working on this?
@wimjongman It is not known, what is needed or if a Maven Central release is desired.
Hi,
I'm not sure what your problem is, but for sure a Maven Central release is desired by us, see https://github.com/eclipse/birt/discussions/863
This is what is currently inside the maven repo [1]. Our official build is in Jenkins [2].
[1] https://mvnrepository.com/artifact/org.eclipse.birt [2] https://ci.eclipse.org/birt/
Which one is the release workflow or what are the commands used for release? Is it this one? https://ci.eclipse.org/birt/job/populate-build-lists/
The birt-master job creates all the artifacts. The artifacts are then uploaded here [1]
We used to have a process to make milestones and release candidates but we are going to skip that for now.
Finally, there will be a job that will move the artifacts from the downloads/snapshots and update-site/snapshots to a final release location.
Then there could be another job that uploads these artifacts to maven central. I guess the artifacts to upload are the bundles in update-site/snapshots/plugins
[1] https://download.eclipse.org/birt/
You mentioned earlier, that you tried something? What are the commands executed for the release? What were the errors?
That way, we have a common process to start from.
I have tried once and failed...
That was for a different project and a long while ago.
I can take this on and I'd like to publish 4.9 manually to make sure all the requirements are met before automating it. Maybe have automation a goal for 4.10.
Do we want to publish just the runtime or everything?
+1 to doing a manual build for now and get the automated build into 8.10
I think that we should just publish the Runtime, if people want to use the design elements, I think they would use a different path.
Scott
On Wed, Mar 16, 2022 at 3:36 PM Steve Schafer @.***> wrote:
I can take this on and I'd like to publish 8.9 manually to make sure all the requirements are met before automating it. Maybe have automation a goal for 8.10.
Do we want to publish just the runtime or everything?
— Reply to this email directly, view it on GitHub https://github.com/eclipse/birt/issues/625#issuecomment-1069605490, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABKF2BN4YYU5TJBPBBGQG7TVAJA4JANCNFSM4ZYBQNVA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID: @.***>
-- Scott Rosenbaum Innovent Solutions, Inc. 612 220 6006 cell
Yes, it's 4.9 not 8.9 ;)
Thanks, Steve!
I'm not sure what is meant with the Runtime. This is what is currently on maven:
https://mvnrepository.com/artifact/org.eclipse.birt
If that's of any help, this is what I'm interested with: https://mvnrepository.com/artifact/org.eclipse.birt.runtime/viewservlets
What I'm looking for is a security fix: https://github.com/eclipse/birt/discussions/863
Quite happy to see BIRT is alive again :)
We are stuck on 4.4.2 and would love to upgrade 4.9.0 but need maven artifacts in central. BTW, the 4.4.2 runtime artifact loads lots of dependencies, better if most of the data connectors are made separate artifacts.
Thanks, Amit. We are looking forward to your patches ;)
Also quite interested in seeing this published to Maven. Would appreciate both the runtime and also viewservlets.
Super excited to see activity in this project again!
birt.war is part of the runtime.
Thanks, Steve!
I'm not sure what is meant with the Runtime. This is what is currently on maven:
https://mvnrepository.com/artifact/org.eclipse.birt
When I think of runtime I think of what's built into build/birt-packages/birt-runtime/target and also what we could download called "birt runtime". It includes all the classes you need to be able to generate BIRT reports in your own application. It also includes the web app and the war file. I think when people want a maven repo, it's so they can conveniently include the necessary classes in their own app.
I'll need to find out if there's a way to build the runtime independently or construct a pom that will do that. That will be the root and then everything it depends on will need to be also published to central. All the pom's will need to meet the maven requirements including <licenses>, <scm>, and PGP signatures. Since this will involved a lot of changes to pom.xml files and 4.9 is now frozen I'll probably need to publish from my fork in order to publish 4.9. Once we get 4.9 successfully published we can make sure 4.10 is ready to go.
https://maven.apache.org/repository/guide-central-repository-upload.html
When I published 4.8 under the Innovent name I pushed all the jar files to Sonatype OSSRH. There is also a mechanism for running your own repository manager. That might be overkill for us but let me know what you think.
https://central.sonatype.org/publish/large-orgs/
Sounds good Steve. I don't think we need our own repo manager, but you be the judge.
I am happy to release 4.10 early, there is no reason to postpone a release when we have some great new stuff to offer.
Here is a link to the platform publish wiki: https://wiki.eclipse.org/Platform-releng/Publish_to_Maven_Central
I can publish to the group com.innoventsolutions, but in order to publish to org.eclipse or any sub-groups, I would need the sonatype jira credentials of whoever owns org.eclipse.
It would be quite better if it was under org.eclipse.
@SteveSchafer-Innovent
I can publish to the group com.innoventsolutions, but in order to publish to org.eclipse or any sub-groups, I would need the sonatype jira credentials of whoever owns org.eclipse.
What commands are you using? mvn release:prepare & release:perform? Will the commands be added to the repo?
Sry, for the noobish question.
@splitcells, although I have published to central before I haven't published using maven so I'm just as much a noob as you are in that area, but I can say that any modifications to the pom files will be part of the repo. My comments about group ownership came from reading https://central.sonatype.org/publish/requirements/coordinates/#choose-your-coordinates.