-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
build: extract project metrics/analytics to terasology-metrics gradle plugin #5020
Conversation
Side note: in the process of moving these configurations over, I discovered that the current line of gradle-spotbugs integration has a minimum requirement of gradle 7.0. So I've set us to use the last release of their previous major version until we do that gradle upgrade. |
CI wasn't even reading the jacoco report at all.
a01fcf0
to
90af4b2
Compare
We can do this now that spotbugs and sonarqube moved to terasology-metrics in build-logic
… to all subprojects
8fadf22
to
ec8decf
Compare
I pushed this to Nanoware:experimental and ran some module builds there: https://jenkins.terasology.io/teraorg/job/Nanoware/job/TerasologyModules/job/X/job/Health/job/develop/ It looks good. We'll just need one ModuleJteConfig change; I've added it to this PR's description. |
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.
Looks quite reasonable to me and I'm thrilled to see it already got tested fully via Jenkins / Nanoware experimental stuff. Nice job 👍
I have not tested locally but you have my full trust in this and all seems well :-) Not sure if that's enough to merge or if more eyeballs could help. I'm good
Yeah, once I figured out which parts to push to Nanoware, I agree that did a good job of exercising it. |
I'm glad I did manage to set up the parallel testing infrastructure to help make that happen :-) Happy you find it useful! |
It didn't take long to run in to other parts of #4985; #5013 didn't include configuration for module builds.
That was happening in
common.gradle
, so it seemed like a good time to extract a chunk of that stuff tobuild-logic
, in line with the other gradle plans of #4015.Removes jacoco, because it wasn't even used by CI.
For Reviewers
Most of the stuff from
common.gradle
went toterasology-metrics.gradle.kts
. Except the jacoco parts, they were dropped.It does look a little weird to have moved 80% of common.gradle, but some of the last things needed more investigation, so I decided to keep scope to the various checks.
How to test
check
locally for checkstyle and whatnotrunclean jacocoReport
, make sure jacoco task depends on (and runs) the testsjacocoPost-Merge