Hello,

we're currently trying to update our installed Jenkins installation (from 1.505 
to a recent one), but I'm not even getting the updated system to start up with 
all jobs.
Depending on the jenkins version used, I'm seeing lots of different confusing 
problems. (Exceptions listed in the log; it doesn't start at all; "looses" lot 
of the views; it starts with a strange duplicated "All" tab; ...)
So all help is appreciated.

First question - before I go in all the gory details:
Is there a sort of recommended procedure  for updating Jenkins ?
All pointers to documentation are welcome !

Current status: (With this system, we have no problems. E.g. I can shut down 
jenkins and then restart it.)
*       Jenkins 1.505
      The master has 30 build slots, used for test.
      The master (as well as the slaves) are exclusively used for Jenkins.
*       Running on Redhat 5 ("Red Hat Enterprise Linux Server release 5.5 
(Tikanga)")
The (two) slaves are one Redhat 5 and one Redhat 6.
The slaves are used for the build; each has four build slots.
*       Java and Jenkins installed on a local FS
*       Java jdk1.6.0_33
Installed in a neighbor subdir to Jenkins. Used by being prepended to the PATH 
in the start script.
*       The plugins installed (besides the ones coming with Jenkins.war) are as 
up to date as possible.
See list below
(For some plugins no update is offered for this Jenkins version any more)
*       Jenkins is started by an explicit call to a  script
(Not started as service at system start time; no container)
java -Xms24G -Xmx36G -XX:PermSize=1G -XX:MaxPermSize=1G 
-Duser.home=/var/..../jenkins -Dhudson.Functions.autoRefreshSeconds=30 -jar 
/var/.../jenkins.war --httpPort=9999 --argumentsRealm.roles.jenkins=admin
*       Some 330 jobs

I can't shut down the running ci for a longer period. I'm afraid of just 
updating the active system and cross my fingers. And most important: I need to 
set the stuff up on a new machine anyway. So I'm trying to set up a "(mostly) 
clone system" on a second machine.

Planned changes to the current status:
*       A more or less up to date Jenkins.
      Is there (besides LTS) a sort of "recommended" version ?
      [I know about this community rating]
      So far I tried
o       1.544
o       1.559
o       LTS1.554.1
*       Running on Red Hat Enterprise Linux Server release 6.3 (Santiago)
      This is one of the main reasons for the update.
*       Three slaves (The "old" ones + the "old" Jenkins server, will probably 
get updated to RH 6)
Note: Because I only have one machine, which I can temporarily "spare" for the 
test, I'm trying to set up the new Jenkins with no slave attached for the 
moment. That might be part of the problem.
Because I need the "old" system running, until the "new" system is proofable 
working, I can't take these resources at once.
*       Java and Jenkins installed on a local FS (separate from the one on the 
"old" machine)
*       Java jdk1.7.0_45
The old java caused problems with the new Jenkins.
Are there recommended versions for different versions of Jenkins ?
I'm only aware of the major updates like jenkins requiring Java 1.X
*       Up to date plugins
*       Same startup script with different parameters (e.g. for new machine and 
new Java)
*       Same jobs
I need also to get the history over, like artifacts, promotions done, ...
But for a start I would be happy, just to get all the jobs running

Basic procedure used:
*        "rsync" jenkins/home from the old to the new machine
o       Stuff like the workspace are excluded
            -exclude=workspace/ --exclude=monitoring/ --exclude=htmlreports/
o       I first do the rsync with the old jenkins running (So I don't have 
quite a big downtime for the active system)
o       Then I shut down the active Jenkins and do a second rsync, to rsync to 
a consistent state
This then is used for to try to start the new system.
*       Overwrite some configuration files, which need an update (for the new 
machine) by updated files
      (Because they contain the name of the machine used as jenkins master)
      Especially home/...
o       config.xml
o       hudson.plugins.emailext.ExtendedEmailPublisher.xml
o       hudson.tasks.Mailer.xml
o       jenkins.model.JenkinsLocationConfiguration.xml
*       Try to start the new Jenkins
      The start-script removes "$JENKINS_HOME/plugins/*/META-INF" before 
starting jenkins
o       First try without any job - this was no problem
o       Then with the jobs - so far this basically always failed with different 
symptoms.

Details
There are several aspects, which aren't clear to me:
*       Can I update Jenkins over this long a distance ?
1.      Do I need several update steps in between ?
2.      Would it help, to first update to the "next" LTS (compared to 1.505) 
and then to an up to date LTS ?
*       What about the plugins:
1.      Should I update these on the new system to the most current ones, 
before I try to start Jenkins with the jobs ?
2.      Or should I first start with the "current" plugins and update these to 
the up to date version only after the jobs are running fine ?
*       What parts of the job configuration to use to try to narrow down the 
problems I'm seeing.
      I see several different "dimensions" in which I could cut down to 
avoid/isolate problems:
1.      By default I already delete
*       all data below 'plugins'
                  find ../jenkins/home/jobs -name 'promotions' -type d 
-depth-first -exec ^C -r {} \;
2.      Remove the history, like artifacts and workspace
3.      Only use a part of the jobs to start
4.      What else can/should be removed
*       Because it gets recreated anyway
*       As a try, because it might cause problems.
*       I tried two tactics on how to add the actual jobs
1.      Copy the jobs (and data, see above) below $JENKINS_HOME/jobs, then 
start jenkins
2.      Move away $JENKINS_HOME/jobs to e.g. $JENKINS_HOME/jobsAWAY
*       Start jenkins
*       After the "empty" Jenkins came up, rename the directory
*       Make Jenkins "see" the jobs by using "Reload Configuration from 
Disk<http://ullteb105.emea.nsn-net.net:9999/reload>"
That way e.g. I could start 1.556 but it got me e.g. two "All" tabs and lots of 
my jobs missing.
*       Where can I get information about problems during start ?
      I'm redirecting stdout & stderr to a log file.
1.      (How) can I change the log level in this file ?
2.      Is there anything in addition, which gives me information before 
Jenkins is up and running ?
*       Is there any sort of temporary data, I should remove before starting 
the new Jenkins ?

Regards

Martin

P.S.:
Here is the list of plugins used: (Versions from the "old" system)
mailer                   Jenkins Mailer Plugin                                  
1.8
external-monitor-job     External Monitor Job Type Plugin                       
1.2
ldap                     LDAP Plugin                                            
1.1 (1.9)
pam-auth                 pam-auth                                               
1.0 (1.1)
subversion               Jenkins Subversion Plug-in                             
1.54 (2.4)
ant                      ant                                                    
1.1 (1.2)
javadoc                  javadoc                                                
1.0 (1.1)
customSCM                Hudson plugin for customized SCM functionality for LTE 
0.7.6
maven-plugin             Maven Integration plugin                               
1.505 (2.3)
cvs                      Jenkins CVS Plug-in                                    
1.6 (2.11)
description-setter       Jenkins description setter plugin                      
1.9-SNAPSHOT (private-02/02/2012 18:07-dems00e7)
security-no-captcha      Security Realm with no CAPTCHA                         
1.0
email-ext                Jenkins Email Extension Plugin                         
2.19-SNAPSHOT (private-02/02/2012 16:55-dems00e7) (2.37.2.2)
promoted-builds          Jenkins promoted builds plugin                         
2.1-FULLFINGERPRINTDISCOVERY1 (2.17)
dashboard-view           Dashboard View                                         
2.5 (2.9.2)
analysis-core            Static Analysis Utilities                              
1.56
warnings                 Warnings Plug-in                                       
4.40
sidebar-link             Sidebar Link                                           
1.6
throttle-concurrents     Jenkins Throttle Concurrent Builds Plug-in             
1.8.2
credentials              Credentials Plugin                                     
1.4 (1.10)
pmd                      PMD Plug-in                                            
3.33 (3.38)
cobertura                Jenkins Cobertura Plugin                               
1.9 (1.9.5)
copyartifact             Copy Artifact Plugin                                   
1.28 (1.30)
PrioritySorter           Priority Sorter                                        
1.3 (2.6)
buildtriggerbadge        Build Trigger Badge Plugin                             
1.0 (1.2)
jobConfigHistory         Jenkins Job Configuration History Plugin               
2.4 (2.6)
translation              Jenkins Translation Assistance plugin                  
1.10 (1.11)
cppcheck                 Jenkins Cppcheck Plug-in                               
1.15 (1.16)
startup-trigger-plugin   Startup Trigger                                        
2.4
extended-read-permission Hudson Extended Read Permission Plugin                 
1.0
groovy                   Hudson Groovy builder                                  
1.13 (1.18)
ws-cleanup               Jenkins Workspace Cleanup Plugin                       
0.20
batch-task               Jenkins batch task plugin                              
1.17
klocwork                 Jenkins Klocwork Plug-in                               
1.15
nested-view              Nested View Plugin                                     
1.10 (1.14)
envinject                Environment Injector Plugin                            
1.89
htmlpublisher            HTML Publisher plugin                                  
1.3
extra-columns            Extra Columns Plugin                                   
1.14
sectioned-view           Sectioned View Plugin                                  
1.18
valgrind                 Jenkins Valgrind Plug-in                               
0.19 (0.20)
parameterized-trigger    Jenkins Parameterized Trigger plugin                   
2.24
log-parser               Log Parser Plugin                                      
1.0.8
postbuild-task           Hudson Post build task                                 
1.8
sloccount                Jenkins SLOCCount Plug-in                              
1.8 (1.19)
dry                      Duplicate Code Scanner Plug-in                         
2.30 (2.40)
analysis-collector       Static Analysis Collector Plug-in                      
1.35 (1.41)
tracking-svn             Tracking SVN Plugin                                    
1.1
build-timeout            Jenkins build timeout plugin                           
1.12.2 (1.13)
leastload                Least Load plugin                                      
1.0.3
xunit                    xUnit plugin                                           
1.56 (1.88)
monitoring               Monitoring                                             
1.50.0
ssh-slaves               Jenkins SSH Slaves plugin                              
0.22 (1.6)
claim                    Jenkins Claim Plugin                                   
2.3
ssh-credentials          SSH Credentials Plugin                                 
0.3 (1.6.1)
greenballs               Green Balls                                            
1.14

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to