extension-kotlin
extension-kotlin copied to clipboard
Setup automated CI/CD pipeline based on GH Actions
Creating releases should be completely automated and triggered by the extension supervisor by a simple command from CLI or by a clik inside github.
I would like to contribute to this. I already setup several pipelines for releasing to Maven Central and wrote an article on that here: https://medium.com/@zambrovski/foss-ci-cd-with-github-actions-c65c37236c19
In addition, I'll investigate in creating a release from "Create Release" functionality on Github web page as a trigger.
Any progress on this? It would be really nice to have a new release in maven central :-) Thanks!
We have GHA in place to test, build and notify our own team of the progress.
Added, it will create snapshots on every push to master or a bug fix branch.
By any means, I do not expect any of Axon's projects to ever automatically make a full release. It will always be "a button" someone (at the moment, me) will push. As we, however, do see value in people working on the bleeding edge, we did add the publication of snapshots as I've just mentioned.
Thus, have a look at the snapshots if you want to tap into the latest set up.
Great to know, thank you. I was wondering the same about https://oss.sonatype.org/content/repositories/snapshots/org/axonframework/extensions/reactor/axon-reactor-spring-boot-starter/ but I see there is a snapshot build for it aswell. That projects latest release on maven central is 6 months old aswell. Is this mainly because the kotlin and webflux support within Axon is still moving too much?
For the time being, we have a release cadence which pulls Framework, Server and all the extensions from one minor release to another at the same time. Thus, as soon as 4.5 of Framework and Server is finalized, that'll mean you can anticipate a 4.5 of the extension to follow relatively soon.
This is done to keep the versioning approach for our users relatively straightforward.
There are two exceptions to this rule at the moment, which are the Kotlin Extension and the Kafka Extension. Both are still in their experimental phases really. So, points in time where we would prefer to have the freedom to change the API as we see fit. That also means that as soon as the Kotlin extension receives a 4.x release, you can expect zero breaking changes when you would move from 4.x to 4.[x+1].
So, turning around to your question:
Is this mainly because the kotlin and webflux support within Axon is still moving too much?
No, not really. The Reactor Extension is simply waiting until the following minor release initiates. The Kotlin Extension is merely waiting to have received more interesting features for the following release.
Hope this clarifies our approach somewhat @magnusheino!
this feature can be closed now, right?
Well, partial. A lot of the effort is done, but there's no single button push to do a full release, yet.
The main point that's missing, is performing the release and pushing it to sonatype. What's in place is to release snapshots.