dev-aspectj / aspectj-maven-plugin

AspectJ Maven Plugin
MIT License
48 stars 12 forks source link

Github actions with three different JDKs and OSes. #2

Closed bmarwell closed 3 years ago

kriegaex commented 3 years ago

Thanks, this was also on my to-do list, getting rid of the obsolete Travis stuff and setting up GitHub actions instead. Did you verify those builds actually work on your own fork? I just see this run, and there seems to be a problem.

BTW, I noticed build problems on JDK 16, but am quite busy with my daytime job and did not look into it yet. We are going to get all of it sorted out, and your build configs could be an important part of pointing out possible problems and incompatibilities. I just was not able to focus on it yet, I just wanted to get the milestone out and ran all tests locally on my Windows box.

I would like to see some successful test runs on your fork first, before merging this. Of course some builds with compatibility problems can be red, but I know that the unit and integration tests should actually run and also was able to generate a Maven site (which probably is not necessary to do for each automatic build job and could be a separate workflow).

bmarwell commented 3 years ago

Thanks, I did not pay attention to this because this was mostly copied from my Apache Shiro Branch. But I added some invalid cache exclusions, which is why it failed.

New build will at least run: https://github.com/bmarwell/aspectj-maven-plugin/actions/runs/881364653

It does not go green, because it is not portable. Fixing this should be one of our next goals. I will open an issue for this.

bmarwell commented 3 years ago

Anyway, the main concern for me is to run the integration tests on different platforms, Java versions and maybe JVM types (even though there I am expecting different results rather with regard to AspectJ itself than AspectJ Maven).

Well, then this PR is just right for you! While they should (mostly) generate the same output due to maven.compiler.target, the ITs are being run on different platforms and JDKs as well.

kriegaex commented 3 years ago

Well, yes, but there are several issues of things failing or passing on different Java versions. Both Javadoc and PlantUML behave differently and throw different errors, for example, and the site looks different. I am in the process of sorting that out. For PlantUML and Javadoc I have the commits in place locally, but I am still investigating an issue about project reports no longer being integrated into the Maven site after upgrading the parent Mojohaus POM and a few plugins and dependencies due to CVS reports. I am calling it a day, 20:15 here already, and I am getting hungry.

bmarwell commented 3 years ago

Well, yes, but there are several issues of things failing or passing on different Java versions. Both Javadoc and PlantUML behave differently and throw different errors, for example, and the site looks different.

That is a check job only not for deployment. For deployment, I propose another job as already mentioned, which is being executed after this one.

kriegaex commented 3 years ago

I want to thank you again for contributing the build configs. After I fixed them and the POMs (which actually never ran the integration tests online for years), I noticed some more issues, one of which was actually something about Javadoc generation I needed to fix in AspectJ upstream.

Now AspectJ 1.9.7.M3 is out, AspectJ Maven 1.13.M3 is also released - and all 27 build jobs in the matrix are green, from Java 8 to 16, across 3 OSs and 3 different JDK types:

https://github.com/dev-aspectj/aspectj-maven-plugin/actions/runs/885241972

Thanks for indirectly kicking my ass to look into all those issues and finally fixing them. 🙂

bmarwell commented 3 years ago

happy to help.