-
Notifications
You must be signed in to change notification settings - Fork 5
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 JaCoCo for Code Coverage Reports in Pass Core #107
Changes from 7 commits
dd8002f
c7990f8
2d3a53b
dc452fa
9939e3e
e1fc2d7
6a18787
aa3cd9a
5b6e40c
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | ||
<modelVersion>4.0.0</modelVersion> | ||
|
||
<parent> | ||
<groupId>org.eclipse.pass</groupId> | ||
<artifactId>pass-core</artifactId> | ||
<version>1.14.0-SNAPSHOT</version> | ||
</parent> | ||
|
||
<artifactId>jacoco-aggregate-report</artifactId> | ||
<packaging>pom</packaging> | ||
|
||
<properties> | ||
<maven.compiler.source>23</maven.compiler.source> | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe 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 commentThe reason will be displayed to describe this comment to others. Learn more. Good catch. It's interesting that IntelliJ generated that even though my project is set to 17. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @rpoet-jh I'm reviewing this and it seems like some modules have this property set and other do not. It looks like the majority do not have it set. Should I remove this property altogether? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Actually the only other POM that has it is in the
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Yeah, I think There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Agreed. |
||
<maven.compiler.target>23</maven.compiler.target> | ||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | ||
</properties> | ||
|
||
<dependencies> | ||
<dependency> | ||
<groupId>org.eclipse.pass</groupId> | ||
<artifactId>pass-core-doi-service</artifactId> | ||
<version>${project.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.eclipse.pass</groupId> | ||
<artifactId>pass-core-file-service</artifactId> | ||
<version>${project.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.eclipse.pass</groupId> | ||
<artifactId>pass-core-metadataschema-service</artifactId> | ||
<version>${project.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.eclipse.pass</groupId> | ||
<artifactId>pass-core-main</artifactId> | ||
<version>${project.version}</version> | ||
<exclusions> | ||
<exclusion> | ||
<groupId>org.ow2.asm</groupId> | ||
<artifactId>asm-tree</artifactId> | ||
</exclusion> | ||
</exclusions> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.eclipse.pass</groupId> | ||
<artifactId>pass-core-object-service</artifactId> | ||
<version>${project.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.eclipse.pass</groupId> | ||
<artifactId>pass-core-policy-service</artifactId> | ||
<version>${project.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.eclipse.pass</groupId> | ||
<artifactId>pass-core-user-service</artifactId> | ||
<version>${project.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.eclipse.pass</groupId> | ||
<artifactId>pass-core-usertoken</artifactId> | ||
<version>${project.version}</version> | ||
</dependency> | ||
</dependencies> | ||
|
||
<build> | ||
<plugins> | ||
<plugin> | ||
<groupId>org.jacoco</groupId> | ||
<artifactId>jacoco-maven-plugin</artifactId> | ||
<version>${jacoco-maven-plugin.version}</version> | ||
<executions> | ||
<execution> | ||
<id>report-aggregate</id> | ||
<phase>verify</phase> | ||
<goals> | ||
<goal>report-aggregate</goal> | ||
</goals> | ||
</execution> | ||
</executions> | ||
</plugin> | ||
</plugins> | ||
</build> | ||
</project> |
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.
Since
pass-core-main
depends on all other modules already, did you try putting this jacoco pom config (report-aggregate
) into thepass-core-main
module pom? I wonder if that may be better if it works so that we don't add another module topass-core
? I know there has been talk about wanting to consolidate the modules into one for pass-core.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.
Yes. I'd like to eventually consolidate all the pass-core modules. I don't think the separation has much point. I agree about using pass-core main if possible. In fact I was wondering if it would work in the pass root module to just cover everything.
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.
@rpoet-jh I will give this a shot and see what happens. I followed this setup from JaCoCo
From my understanding the report aggregation needs to be it's own separate module. When I originally tried doing this I tried setting the project POM to be the aggregator, but that didn't work. From my reading of the docs, if it was setup in
pass-core-main
it wouldn't generate a report for pass-core-main, but would only collect from the other submodules and place the aggregated report inpass-core-main
.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.
@markpatton @rpoet-jh This is what happens when I move the aggregation to
pass-core-main
. It won't create a report forpass-core-main
. I've tried playing around with different phases, scopes, with/without the agent inpass-core-main
.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.
Ok, thanks for trying. When we consolidate the modules in
pass-core
, we can revisit. I'm fine leaving it like this for now, @markpatton any objection?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.
@rpoet-jh @tsande16 No. Let's go for it.