I wanted to track test coverage for XMLUnit for Java using Coveralls (could be better and I should do the same for XMLUnit.NET, but these are different stories).
In theory this is pretty easy, given that there already is a Travis
CI build. I added the Jacoco and Coveralls plugins in a Maven profile
and made Travis run the profile as an after_success
script. But instead of publishing data, I was greeted by
[ERROR] Failed to execute goal org.eluder.coveralls:coveralls-maven-plugin:3.0.1:report (default-cli) on project xmlunit-parent: Unable to parse configuration of mojo org.eluder.coveralls:coveralls-maven-plugin:3.0.1:report for parameter timestamp: Cannot convert '1425416381951' to Date -> [Help 1]
Well, I never configured the timestamp for coveralls and I was
pretty sure I wasn't setting a timestamp
property,
either. Searching around didn't lead to anything, there was no
environment variable configured, strange. Finally it dawned on me
that the buildnumber plugin I used in order to get the git hash into
the jar manifests also sets a property named timestamp
as
a side-effect. So far I wasn't using it but rather
maven.build.timestamp
for the manifest so I had ignored
said property. With that
<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>buildnumber-maven-plugin</artifactId> <version>1.3</version> <configuration> ... <timestampFormat>{0,date,yyyy-MM-dd HH:mm:ssa}</timestampFormat> ... </configuration> </plugin>
finally did the trick.
path: /en/oss/XMLUnit | #