Problem upgrading from 1.542 to 1.609.1

42 views
Skip to first unread message

novamine118

unread,
Jun 17, 2015, 2:57:42 PM6/17/15
to jenkins...@googlegroups.com
Greetings,


I recently tried to upgrading my Jenkins instance from 1.542 to 1.609.1 - about a 1.5 year difference in release dates. The jenkins instance is setup in a linux-tomcat7 environment described here: https://wiki.jenkins-ci.org/display/JENKINS/Tomcat

I performed the upgrade by replacing the ROOT.war to the 1.609.1 WAR file, removing the expanded WAR, and restarting tomcat7. The restart took a while(~ 1 hour) due to https://wiki.jenkins-ci.org/display/JENKINS/JENKINS-24380+Migration
Everything seemed to work fine, but the UI was missing some sections:

The entire left column on the home page was missing (New Job, build queue, executors). For a Job (maven job in this case), the only thing visible was the Permalinks section. Functionally, the job built successfully though. I didn't notice any exceptions being thrown when accessing these pages in the log. I created a new job and it was missing the same areas as the existing ones.

I wanted to see if a fresh jenkins instance of this version worked so I moved my jenkins home somewhere else and restarted tomcat. The fresh instance worked fine...which leans towards an issue with an existing plugin maybe? I'll attach the versions of all the plugins that were installed. I ended up downgrading the jenkins version back to 1.542 (doing the reverse migration steps) and it's back to normal.

Questions
1) Has anyone encountered an issue like this?
2) When performing an upgrade, is it recommended to do smaller version jumps?
3) Any suggestions on how to proceed?

I have a hunch that the issue is purely css...possible from the simple-theme-plugin. The plugin uses this css file:
body {
  background-color: #205081;
}

table, form, input, td, th, p, textarea, select {
  font-family: 'Lucida Grande', 'Segoe UI', Arial, sans-serif;
  font-size: 11px;  
}

pre, .settings-input {
  font-family: Consolas, monospace;
}

h1, h2, h3, h4, h5, h6 {
  color: #000000; }

a:link, a:visited {
  text-decoration: underline;
  color: #3b73af;
}

a.model-link.inside {
  text-decoration:none;
}

#executors a.model-link.inside {
  background: none repeat scroll 0 0 #F5F5F5;
  border: 1px solid #CCCCCC;
  color: #3B73AF;
  display: inline-block;
  font-size: 11px;
  font-weight: normal;
  line-height: 1.3;
  margin: 0 3px 0 0;
  max-width: 100%;
  padding: 1px 5px;
  text-align: left;
  text-decoration: none;
  vertical-align: middle;
  white-space: normal;
}
/*
img {
  display: none;
}
*/

/* top panel */

#top-panel {
  background: none; 
}

#top-panel td#login-field span a {
  background: none; 
}

#top-panel td #searchform a {
  background: none;
  height: auto;
  width: auto; 
}

#top-panel td > a {
  background: url("/userContent/theme/jenkins_logo.png") 0 no-repeat;
  display: block;
  width: 330px;
  height: 30px;
  margin: 8px 0 5px 10px; 
}

#top-panel td > a img {
  display: none; 
}

#top-panel img {
  display: none;
}

/* project status */

#projectstatus {
  background: #fff; 
}

#projectstatus tr:nth-of-type(odd) {
  background-color: #f5f5f5; 
}

#projectstatus tr:nth-of-type(odd):hover {
  background-color: #e5e5e5; 
}

#projectstatus tr:nth-of-type(even) {
  background-color: white; 
}

#projectstatus tr:nth-of-type(even):hover {
  background-color: #e5e5e5; 
}

.bigtable tr {
  border:1px solid #dcdcdc;
}

#search-box {
  -moz-appearance: textfield;
  -webkit-appearance: textfield;
  border: none;
  border-radius: 5em;
  box-shadow: inset 1px 2px 3px rgba(0,0,0,0.3);
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: #333;
  font-family: inherit;
  font-size: 14px;
  height: 1.71428571428571em;
  line-height: 1.71428571428571;
  padding-left: 20px;
  position: static;
  font-size: 16px;
  padding: 5px 10px;
  background-image: none;
  margin: 7px;
}

.top-sticker, .noedge {
  top: 43px;
  left: 0px;
  font-size: 14px;
}

/* left navigation */

#left-top-nav {
  border-left: none; 
}

/* side panel  */

td.pane-header {
  border: 1px #bbb solid;
  border-right: none;
  border-left: none;
  background-color: #369;
  font-weight: bold;
  font-size: 12px;
  color: #ffffff;
  min-height: 24px;
  -moz-border-radius-topleft: 3px;
  border-top-left-radius: 3px;
  -moz-border-radius-topright: 3px;
  border-top-right-radius: 3px;
  border: 1px solid #ddd;
  padding: 4px 64px 4px 10px;
  line-height: 1.666666666667;
}

.pane-header a:link, .pane-header a:visited {
  color:#FFFFFF; 
  text-decoration: none;
}

#side-panel {
  background-color: #fff; 
}

#side-panel > div:not(#navigation) {
  display: none; 
}

#side-panel .task a {
  text-decoration: none;
  font-size: 12px;
  width: 10%; 
}
  
#side-panel .task a + a {
  width: 83%;
  padding: 4px; 
}
  
#side-panel .task a + a:hover {
  background-color: #e6e6e6;
  text-decoration: none; 
}

table.progress-bar.red td.progress-bar-done {
  background-color: #3465a4;
}
      
table.progress-bar.red {
  border: 1px solid #3465a4;
}

td.progress-bar-done {
  background-color: #3465a4;
}

/* main panel  */

#view-message #description a img {
  padding-right: 4px;

}

#main-panel {
  background: #ffffff; 
}

#main-panel > h1 {
  font-size: 24px;
  font-weight: normal;
  line-height: 1.25;
  margin-top: 10px;
}

#main-table {
  border-top: 0;
  border-bottom: 0; 
}

#viewList td.active {
  border: solid 1px #bbb;
  padding: 0.5em;
  border-bottom: none;
  vertical-align:middle;
  background-color: rgb(240,240,240);
  font-weight: bold;
  white-space: nowrap;
}

#viewList {
  border: none;
  margin-bottom: 0px;
  margin-top: 20px;
  width: 100%;
  white-space: nowrap;
}

#viewList td.inactive a {
  background: #f2f2f2;
  background: -moz-linear-gradient(top,#fff 0,#f2f2f2 100%);
  background: -webkit-gradient(linear,left top,left bottom,color-stop(0%,#fff),color-stop(100%,#f2f2f2));
  background: -webkit-linear-gradient(top,#fff 0,#f2f2f2 100%);
  background: -o-linear-gradient(top,#fff 0,#f2f2f2 100%);
  background: -ms-linear-gradient(top,#fff 0,#f2f2f2 100%);
  background: linear-gradient(top,#fff 0,#f2f2f2 100%);
  border-color: #ccc;
  border-width: 1px;
  color: #333;
  display: inline-block;
  margin: 0;
  padding: 10px 10px;
  text-decoration: none;
  text-shadow: 0 1px 0 white;
  vertical-align: baseline;
  height: auto;
  text-indent: 0;
  width: auto;
  float: left;
}

#viewList td.inactive a:hover {
  border-color: #000000;
}

#viewList td.active {
  border-bottom: none;
  vertical-align: middle;
  font-weight: bold;
  white-space: nowrap;
  background: #f2f2f2;
  background: -moz-linear-gradient(top,#fff 0,#f2f2f2 100%);
  background: -webkit-gradient(linear,left top,left bottom,color-stop(0%,#fff),color-stop(100%,#f2f2f2));
  background: -webkit-linear-gradient(top,#fff 0,#f2f2f2 100%);
  background: -o-linear-gradient(top,#fff 0,#f2f2f2 100%);
  background: -ms-linear-gradient(top,#fff 0,#f2f2f2 100%);
  background: linear-gradient(top,#fff 0,#f2f2f2 100%);
  border-color: #ccc;
  border-width: 1px;
  color: #333;
  margin: 0;
  padding: 10px 10px;
  text-decoration: none;
  text-shadow: 0 1px 0 white;
  height: auto;
  text-indent: 0;
  width: auto;
}

/* footer panel  */

#footer {
  border-top: 0 none;
  text-align: center;
  background: #f5f5f5;
}

input[name='j_username'], input[name='j_password'] {
    -moz-box-sizing: border-box;
    border: 1px solid #CCCCCC;
    border-radius: 3.01px 3.01px 3.01px 3.01px;
    box-shadow: 0 1px 3px #CCCCCC inset;
    color: #333333;
    font-size: inherit;
    margin: 0;
    max-width: 250px;
    vertical-align: baseline;
    width: 100%;
    height: 1.7em;
    line-height: 1.42857;
    padding: 4px 5px;
}

#yui-gen1-button {
    -moz-box-sizing: border-box;
    background: -moz-linear-gradient(center top , #FFFFFF 0px, #F2F2F2 100%) repeat scroll 0 0 rgba(0, 0, 0, 0);
    border-radius: 3.01px 3.01px 3.01px 3.01px;
    color: #333333;
    cursor: pointer;
    display: inline-block;
    font-family: inherit;
    font-size: 14px;
    font-variant: normal;
    font-weight: normal;
    height: 2.14286em;
    line-height: 1.42857;
    margin: 0;
    padding: 4px 10px;
    text-decoration: none;
    text-shadow: 0 1px 0 #FFFFFF;
    vertical-align: baseline;
    white-space: nowrap;
    text-transform: capitalize;
}


#footer a:link, #footer a:visited {
  color:#707070; 
}

/* Console output */ 
body>pre,#main-panel>pre {
    font-size:14px;
    background-color:#393939;
    color:#b5c4d0;
    padding:20px 20px 30px;
    border-radius:3px;
    /*box-shadow*/
    -webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.32);
    -moz-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.32);
    box-shadow: 0 1px 10px rgba(0, 0, 0, 0.32);
    /*background-clip*/
    -webkit-background-clip: padding-box;
    -moz-background-clip: /*@@prefixmycss->No equivalent*/; 
    background-clip:padding-box;
    /*@@prefixmycss->No equivalent*/
    : ;
    /*border-radius*/
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    border: 1px solid rgba(0, 0, 0, 0.2);
    word-wrap: break-word;
    max-width: 1200px;
}

body>pre a,body>pre a:visited,#main-panel pre a,#main-panel pre a:visited {
    color:#9a8eb8;
}

/* Dooney */

.doony-callout-info {
  background-color: #f0f7fd;
  border-color: #d0e3f0;
}

.doony-downstream-link {
  display: block;
}

.doony-circle {
  border-radius: 50%;
}

.doony-circle-aborted {
  background: #999;
  background-image: -moz-radial-gradient(3px 3px 45deg, circle cover, #cccccc 0%, #999999 100%);
  background-image: -webkit-radial-gradient(3px 3px, circle cover, #cccccc, #999999);
  background-image: radial-gradient(circle at 3px 3px, #cccccc 0%, #999999 100%);
}

.doony-circle-failure {
  background: #ac2925;
  background-image: -moz-radial-gradient(3px 3px 45deg, circle cover, #d9534f 0%, #ac2925 100%);
  background-image: -webkit-radial-gradient(3px 3px, circle cover, #d9534f, #ac2925);
  background-image: radial-gradient(circle at 3px 3px, #d9534f 0%, #ac2925 100%);
}

.doony-circle-success {
  background: #397439;
  background-image: -moz-radial-gradient(3px 3px 45deg, circle cover, #72d472 0%, #397439 100%);
  background-image: -webkit-radial-gradient(3px 3px, circle cover, #72d472, #397439);
  background-image: radial-gradient(circle at 3px 3px, #72d472 0%, #397439 100%);
}

.doony-circle-warning {
  background: #f0ad4e;
  background-image: -moz-radial-gradient(3px 3px 45deg, circle cover, #f0ad4e 0%, #d58512 100%);
  background-image: -webkit-radial-gradient(3px 3px, circle cover, #f0ad4e, #d58512);
  background-image: radial-gradient(circle at 3px 3px, #f0ad4e 0%, #d58512 100%);
}


plugins:
I updated these plugins after the upgrade (the versions below are the versions prior to the upgrade):
Jenkins Mailer Plugin
SSH Credentials Plugin
External Monitor Job Type Plugin
Jenkins SSH Slaves plugin
Maven Integration plugin
Credentials Plugin

active-directory1.33falsefalse
ant1.2falsetrue
antisamy-markup-formatter1.1truefalse
anything-goes-formatter1.0truefalse
artifactdeployer0.28falsefalse
artifactory2.2.1truefalse
branch-api0.2-beta-1truefalse
build-name-setter1.3truefalse
build-pipeline-plugin1.4.3truefalse
build-timeout1.12.2truefalse
buildtriggerbadge1.2truefalse
clone-workspace-scm0.6falsefalse
conditional-buildstep1.3.3truefalse
config-file-provider2.7.1truefalse
configurationslicing1.38.3truefalse
console-column-plugin1.5falsefalse
copyartifact1.28truefalse
credentials1.9.4truetrue
cvs2.11falsetrue
delivery-pipeline-plugin0.8.6truefalse
deploy1.9truefalse
description-setter1.8truefalse
dynamicparameter0.2.0truefalse
email-ext2.38.1truefalse
envinject1.89truefalse
extended-read-permission1.0truefalse
external-monitor-job1.2falsetrue
git2.0truefalse
git-client1.4.6truefalse
git-server1.2truefalse
gitlab-hook1.0.0truefalse
groovy1.14truefalse
groovy-postbuild1.8truefalse
ivy1.23.2falsefalse
javadoc1.1truetrue
jenkins-pipeline-plugin1.0.34-10truefalse
job-dsl1.21truefalse
job-node-stalker1.0.3truefalse
jobConfigHistory2.5falsefalse
join1.15truefalse
jquery1.7.2-1truefalse
jquery-ui1.0.2truefalse
junit1.2-beta-4truefalse
lastsuccessdescriptioncolumn1.0truefalse
ldap1.7truetrue
literate0.2-beta-1truefalse
mailer1.8truetrue
managed-scripts1.1.1truefalse
matrix-auth1.1truetrue
matrix-project1.4.1truefalse
maven-plugin2.1truetrue
maven-repo-cleaner1.2truefalse
msbuild1.21truefalse
mstest0.7truefalse
mstestrunner1.0.1truefalse
nant1.4.3falsefalse
nested-view1.14falsefalse
next-build-number1.1truefalse
pam-auth1.1truetrue
parameterized-trigger2.21truefalse
periodicbackup1.3falsefalse
postbuildscript0.16truefalse
project-inheritance1.4.12falsefalse
promoted-builds2.14truefalse
redmine0.15truefalse
repository1.0falsefalse
role-strategy2.1.0truefalse
ruby-runtime0.12truefalse
run-condition1.0truefalse
scm-api0.2truefalse
script-security1.13truefalse
scriptler2.6.1truefalse
sectioned-view1.18falsefalse
simple-theme-plugin0.3truefalse
sonar2.1truefalse
ssh2.3truefalse
ssh-credentials1.6truetrue
ssh-slaves1.5truetrue
subversion2.0-beta-1truetrue
timestamper1.5.7truefalse
token-macro1.10truefalse
translation1.10falsetrue
windows-slaves1.0truefalse
ws-cleanup0.19falsefalse
xvnc1.14truefalse

Thanks,
Xavier


novamine118

unread,
Jun 17, 2015, 3:31:12 PM6/17/15
to jenkins...@googlegroups.com
I just tested a fresh instance of 1.609.1 and installed the simple theme plugin with the css file listed above and it got the same UI behavior. it looks like an id changed that the css depended on. Hopefully this helps someone else in the future :D

I'll do the migration and upgrade again soon and hopefully that's the only issue.

-Xavier
Reply all
Reply to author
Forward
0 new messages