Status: Resolved (View Workflow)
Windows 2003 R3
Apache httpd 2.2 as frontend (apj13 proxy)
After moving to a Jenkins installation that runs as a service. I noticed it now had the option to download new versions of itself and upgrade. I tried that with 1.452 and was a bit confused that it restarted but still showed 1.452 as version number. But also gives me the option to downgrade to 1.452.
After a couple more tries I think I can conclude that what happens is that it downloads the new version just fine (as jenkins.war.tmp) and copies the current version fine as well (jenkins.war.bak). But it never actually gets around to replacing the current running version with the new one.
This appears to be the relevant part of the jenkins.err.log:
INFO: Starting the installation of jenkins.war on behalf of kpe Mar 19, 2012 9:17:19 AM hudson.model.UpdateCenter$UpdateCenterConfiguration download INFO: Downloading jenkins.war Mar 19, 2012 9:17:19 AM hudson.model.UpdateCenter doSafeRestart INFO: Scheduling Jenkins reboot Mar 19, 2012 9:17:40 AM hudson.model.UpdateCenter$DownloadJob run INFO: Installation successful: jenkins.war
But I am a bit confused on how this would ever actually work on Windows? Since files are generally locked up pretty tight. So replacing or overwriting a file that Java is actively using would be practically impossible. And instead it would require some sort of utility running before starting Jenkins to replace the war file with the newly downloaded one.