Details
-
New Feature
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
Description
Saw this for about the 8000th time this morning:
[INFO] Finished at: 2024-02-23T19:26:07-06:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M7:test (default-test) on project presto-native-execution: There are test failures.
[ERROR]
[ERROR] Please refer to /root/project/presto-native-execution/target/surefire-reports for the individual test results.
[ERROR] Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump and [date].dumpstream.
[ERROR] -> [Help 1]
Not a bug in Maven. As usual something in my project is broken. That's why we use continuous integration (CI). However, these messages assume that I'm building and testing locally on my local file system. Often I'm not.
/root/project/presto-native-execution/target/surefire-reports and [date].dump, [date]-jvmRun[N].dump and [date].dumpstream. aren't necessarily accessible from the CI. Some devs with limited privileges can't read the CI filesystem, and even those who can will have to do a lot of digging to find where they've actually been put. And of course this will vary from one CI software to the next and from one installation to the next.
What's needed is some way a CI system like Travis or CircleCI or github actions or whatever to inject file path and most importantly URLS into the log messages that Maven outputs. That way the dev can just click through the links to find the debugging information they need.