Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-6268

Make checking for modification time of junit results be configurable and off by default

    Details

    • Type: Improvement
    • Status: Open (View Workflow)
    • Priority: Blocker
    • Resolution: Unresolved
    • Component/s: junit-plugin
    • Labels:
      None
    • Similar Issues:

      Description

      The JUnit Result Archiver will fail the build if the test result files that match the filemask do not have a very recent modification time. The error message it prints is this:
      "Test reports were found but none of them are new. Did tests run?"

      This can be inconvenient in several settings; notably, when the clocks on the master and slave fall out of sync, or when the test results were generated by some process that isn't part of the build itself – maybe they were scp'd from somewhere else, for instance. Or for testing the JUnitResultArchiver itself.

      In my opinion, the behavior should be changed such that check-for-recent-modifications should be off by default. Additionally, the user should be able to specify a "recent" threshold via a setting.

        Attachments

          Issue Links

            Activity

            Hide
            alex_dubrouski Alex Dubrouski added a comment -

            Gradle 4.0 moved build cache from incubating state to production. Build cache among other things caches JUnit test results, which results in continuous failures. It actually blocks our implementation of pipelines.

            Show
            alex_dubrouski Alex Dubrouski added a comment - Gradle 4.0 moved build cache from incubating state to production. Build cache among other things caches JUnit test results, which results in continuous failures. It actually blocks our implementation of pipelines.
            Hide
            sourmonk Justin McMillan added a comment - - edited

            I'm also blocked by this – I use a single Jenkins pipeline job to execute tests (across multiple environments – we want reporting on a per-environment level), and then another job executes which pulls those JUnit results into the workspace, and builds a report. I am encountering this on XMLs that are ~5 seconds "old".

             

            This Powershell script works, but still not the greatest:

            $files = Get-ChildItem "${WORKSPACE}"
              foreach ($i in $files) {
              $i.LastWriteTime = $(Get-Date)
            }
            
            Show
            sourmonk Justin McMillan added a comment - - edited I'm also blocked by this – I use a single Jenkins pipeline job to execute tests (across multiple environments – we want reporting on a per-environment level), and then another job executes which pulls those JUnit results into the workspace, and builds a report. I am encountering this on XMLs that are ~5 seconds "old".   This Powershell script works, but still not the greatest: $files = Get-ChildItem "${WORKSPACE}" foreach ($i in $files) { $i.LastWriteTime = $(Get-Date) }
            Hide
            mkobit Mike Kobit added a comment -

            Echoing what Alex Dubrouski said, this totally breaks incremental builds from tools like Gradle.

            Show
            mkobit Mike Kobit added a comment - Echoing what Alex Dubrouski said, this totally breaks incremental builds from tools like Gradle.
            Hide
            laeubi Christoph Läubrich added a comment -

            Is there any progress on this? We are also hit by this, so currently we have only the option to disable junit recording at all...

            Show
            laeubi Christoph Läubrich added a comment - Is there any progress on this? We are also hit by this, so currently we have only the option to disable junit recording at all...
            Hide
            postman Per Östman added a comment -

            This one is nine (9) years old. Come on, please fix this!

            Show
            postman Per Östman added a comment - This one is nine (9) years old. Come on, please fix this!

              People

              • Assignee:
                Unassigned
                Reporter:
                bshine bshine
              • Votes:
                45 Vote for this issue
                Watchers:
                43 Start watching this issue

                Dates

                • Created:
                  Updated: