-
Bug
-
Resolution: Fixed
-
Minor
-
None
-
Jenkins 1.456/ Ubuntu 11.10
The main build status page shows a 48x48 icon representing the build status. If you visit the page during the build this shows a flashing "build in progress" icon. However when the build stops the "build in progress" icon continues to be displayed.
This is due to browser caching behaviour. For example the recent build at the following URL
http://ci.jenkins-ci.org/job/tools_maven-hpi-plugin-maven-2.x/40/
During the build the relevant markup was
<img height="48" alt="In progress" width="48" src="buildStatus" tooltip="In progress" /> Build #40 (23-Mar-2012 01:18:30)
The request for buildStatus returned a HTTP 302 redirect to
Location:http://ci.jenkins-ci.org/images/48x48/blue_anime.gif
The combination of a 302 redirect and caching headers in the gif cause the browser to not re-request buildStatus within the same browser session.
http://ci.jenkins-ci.org/job/tools_maven-hpi-plugin-maven-2.x/40/buildStatus
Note this is unrelated to the recent changes for caching of images etc. I have noticed this in the past but have not had time to investigate before now.
I think that the observed behaviour is down to the loosely defined semantics of HTTP 302 responses. In this case we want HTTP/1.1 307 behaviour instead of HTTP/1.1 303 type behaviour.
That said in this instance I think that the correct fix is to just put the image URL inline in the img src attribute. The tooltip and alt attributes are already fixed inline so putting the actual icon URL inline seems appropriate too.