Table of Contents
- Table of Contents
- Before you begin
- When you are actually migrating
- Basics
- Debian package
- RedHat/openSUSE packages
- Installed as Windows service
- Installed in servlet container
- If you are thinking about upgrading to Jenkins but not ready to do so now
- After upgrading
This page discusses how you upgrade from Hudson to Jenkins. Note that migration is only supported from Hudson <= 1.395
Before you begin
Please make a backup, especially the Hudson home directory, that contains the most important information, such as jobs, configuration and build history. In the unlikely event that something goes wrong you can recover from the backup.
When you are actually migrating
Basics
Jenkins is basically a drop-in replacement to Hudson. It's the continuation of the same code base, in same package structure. There has been no major surgery since the rename, and the rename really only affected what's shown in the UI. As such, it understands the same set of environment variables, same system properties, and the same information in the home directory. So if you rename jenkins.war as hudson.war, and simply overwrite your hudson.war, the upgrade is complete.
| WARNING Jenkins does not support cascading projects yet. See JENKINS-3157 |
Debian package
Current users of the Hudson debian package should follow the instruction here for the new users. When you do "apt-get install jenkins", it will uninstall the hudson package, transfer your /var/lib/hudson to /var/lib/jenkins.
- A few users have reported losing their /var/lib/hudson data in the upgrade. Please make a backup before upgrading till the report can be sorted out.
- Check your /etc/default/hudson for the HUDSON_HOME to backup
- Note that Jenkins run as the jenkins user. If you have scripts and other automation that hard-codes the user name, they'll need to be updated.
- If you are using the unix based authentication system, make sure that you add the jenkins user to the shadow group or you won't be able to log in.
- If your /var/lib/hudson is big, it may take some time for the post-init script to do chown.
- What used to be in /etc/default/hudson is now in /etc/default/jenkins. If you've made changes to this configuration file, you need to manually reflect those into /etc/default/jenkins.
- If your HUDSON_HOME was not in /var/lib/hudson, you need to manually chown your HUDSON_HOME to the jenkins user and update /etc/default/jenkins.
| If you don't want the jenkins package to touch /var/lib/hudson or if you'd like to keep the hudson user to run Jenkins, rename /var/lib/hudson to /var/lib/hudso_ before the jenkins installation, then after the package has finished installing, move /var/lib/hudso_ back to /var/lib/hudson and change /etc/default/jenkins to run as the hudson user. |
RedHat/openSUSE packages
Current users of the Hudson rpm package should follow the instruction here (Red Hat) or