Search code examples
dockernginxjenkinsjenkins-plugins

How to view Jenkins Robot Framework plugin reports that reside within a docker container?


I am running a dockerized Jenkins with CasC setup. I installed the Robot Framework plugin and it works well except for the fact that the log.html and report.html files are within my docker container so trying to resolve http://IP../log.html shows a 404 not find. It is trying to find files within the host but they exist in the container and I am not sure how to view these files from a browser.

I tried adding an nginx reverse proxy but I cannot get it to work as the html files created are always in different locations depending on the build number.


Solution

  • Asked on Jenkins support and they said to use archive artifacts. Thread can be found https://issues.jenkins.io/browse/JENKINS-71062.

    In essence solution was to use archiveArtifacts to store the files instead of robot.

    To do so, move the files to the current workspace:

    sh "cp /home/user/robot/tests/results/*.html $WORKSPACE"

    and use archiveArtifacts in the pipeline to have Jenkins store it.

    archiveArtifacts artifacts: '*', fingerprint: true