-
Notifications
You must be signed in to change notification settings - Fork 20
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
Add native testing with GraalVM and test containers #449
Conversation
SonarCloud Quality Gate failed. |
@@ -1,7 +1,9 @@ | |||
[versions] | |||
micronaut-docs = '2.0.0' | |||
micronaut = '4.0.0-M1' | |||
micronaut = '4.0.0-M2' | |||
micronaut-platform = '4.0.0-M1' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why do you need micronaut-platform
version? We are trying for modules not to depend on platform.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this was on the recommendation of @melix
basically I don't see a way to use the Micronaut Gradle plugin without specifying the platform
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Short answer: because we're hacking to use user build plugins in our module builds.
Long answer
Our modules use our internal build plugins. Those plugins must not depend on the platform, and automatically add a catalog named mn
which corresponds to the core version of Micronaut. This plugin expects the micronaut
property to refer to the core version.
On the other hand, a user applying the Micronaut application plugin defines micronautVersion
(micronaut
, or micronaut-platform
in a catalog), but there it corresponds to the platform version. Latest release also supports adding automatically a catalog named mn
, but then it's the platform catalog, unlike our internal build plugins.
Because in our tests we use the Gradle plugin, we are in a conflict situation where our internal plugins expect micronaut
to be the version of core, while the user Gradle plugin expects it to be the platform version.
Therefore, we have to explain, in our test suites, that the micronaut
version to be used, the platform one, is different. That we can do by explicitly having a variable which stores the platform version and uses it in the tests.
Relates to micronaut-projects/micronaut-core#9083