Jenkins upgrade from 2.249.1 to new stable LTS version

Hi Jenkins Team,
I would like to understand the steps to follow to upgrade the Jenkins version 2.249.1 to stable LTS jenkins version.

When we tried last stable version a month ago, the plugins were not working fine.

Please help with the upgrade steps along with plugin versions that supports the suggested stable Jenkins LTS.

Jenkins setup:
Jenkins: 2.249.1
OS: Linux - 4.14.35-2047.530.5.1.el7uek.x86_64
Java: 11.0.21 - Red Hat, Inc. (OpenJDK 64-Bit Server VM)
---
Office-365-Connector:4.14.0
ace-editor:1.1
active-directory:2.24
ansicolor:1.0.0
ant:1.11
antisamy-markup-formatter:2.1
apache-httpcomponents-client-4-api:4.5.13-1.0
authentication-tokens:1.4
authorize-project:1.4.0
basic-branch-build-strategies:1.3.2
blueocean-commons:1.24.7
blueocean-core-js:1.24.7
blueocean-dashboard:1.24.7
blueocean-github-pipeline:1.24.7
blueocean-i18n:1.24.7
blueocean-jwt:1.24.7
blueocean-personalization:1.24.7
blueocean-pipeline-api-impl:1.24.7
blueocean-pipeline-scm-api:1.24.7
blueocean-rest:1.24.7
blueocean-rest-impl:1.24.7
blueocean-web:1.24.7
bootstrap4-api:4.6.0-3
bootstrap5-api:5.0.1-2
bouncycastle-api:2.20
branch-api:2.6.2
build-pipeline-plugin:1.5.8
build-timeout:1.20
build-user-vars-plugin:1.7
caffeine-api:2.9.1-23.v51c4e2c879c8
checks-api:1.7.0
cloudbees-bitbucket-branch-source:2.9.9
cloudbees-folder:6.15
codesonar:2.1.0
command-launcher:1.6
conditional-buildstep:1.4.1
config-file-provider:3.8.0
configure-job-column-plugin:1.0
console-column-plugin:1.5
copy-to-slave:1.4.4
credentials:2.5
credentials-binding:1.25
custom-job-icon:0.2
custom-tools-plugin:0.8
dashboard-view:2.16
disk-usage:0.28
display-url-api:2.3.5
docker-commons:1.17
docker-workflow:1.26
durable-task:1.37
echarts-api:5.1.2-2
email-ext:2.83
envinject:2.3.0
envinject-api:1.7
environment-script:1.2.5
extended-choice-parameter:0.82
extended-read-permission:3.2
extensible-choice-parameter:1.7.0
external-monitor-job:1.7
extra-columns:1.23
favorite:2.3.2
filesystem-list-parameter-plugin:0.0.6
flexible-publish:0.16.1
folder-properties:1.2.1
font-awesome-api:5.15.3-3
git:4.6.0
git-changelog:3.21
git-client:3.6.0
git-server:1.9
github:1.33.1
github-api:1.123
github-branch-source:2.9.9
gradle:1.36
greenballs:1.15.1
groovy:2.4
handlebars:3.0.8
handy-uri-templates-2-api:2.1.8-1.0
hidden-parameter:0.0.4
htmlpublisher:1.25
ivy:2.1
jackson2-api:2.12.3
javadoc:1.6
jaxb:2.3.0.1
jdk-tool:1.5
jenkins-design-language:1.24.7
jjwt-api:0.11.2-9.c8b45b8bb173
job-dsl:1.77
job-import-plugin:3.4
jobConfigHistory:2.27
jquery:1.12.4-1
jquery-detached:1.2.1
jquery3-api:3.6.0-1
jsch:0.1.55.2
junit:1.50
ldap:1.26
lockable-resources:2.11
mailer:1.34
mapdb-api:1.0.9.0
mask-passwords:2.13
matrix-auth:2.6.7
matrix-project:1.18
maven-plugin:3.8
mercurial:2.15
momentjs:1.1.1
multi-branch-project-plugin:0.7
next-executions:1.0.15
nexus-artifact-uploader:2.13
nexus-jenkins-plugin:3.11.20210621-093929.6318134
nodejs:1.4.0
okhttp-api:3.14.9
pam-auth:1.6
parameterized-trigger:2.39
pipeline-build-step:2.13
pipeline-github-lib:1.0
pipeline-graph-analysis:1.11
pipeline-input-step:2.12
pipeline-milestone-step:1.3.2
pipeline-model-api:1.8.5
pipeline-model-declarative-agent:1.1.1
pipeline-model-definition:1.8.5
pipeline-model-extensions:1.8.5
pipeline-rest-api:2.19
pipeline-stage-step:2.5
pipeline-stage-tags-metadata:1.8.5
pipeline-stage-view:2.19
pipeline-utility-steps:2.8.0
plain-credentials:1.7
plugin-util-api:2.3.0
popper-api:1.16.1-2
popper2-api:2.5.4-2
publish-over:0.22
publish-over-ssh:1.22
pubsub-light:1.13
rebuild:1.32
repository-connector:1.3.1
resource-disposer:0.16
role-strategy:3.1.1
run-condition:1.5
saml:1.1.7
scm-api:2.6.4
script-security:1.77
scriptler:3.3
shared-workspace:1.0.2
simple-theme-plugin:0.6
skip-certificate-check:1.0
snakeyaml-api:1.29.1
soapui-pro-functional-testing:1.6
sonar:2.13.1
sse-gateway:1.24
ssh:2.6.1
ssh-credentials:1.18.1
ssh-slaves:1.31.5
ssh-steps:2.0.0
structs:1.23
subversion:2.14.4
timestamper:1.13
token-macro:2.13
trilead-api:1.0.13
uno-choice:2.5.6
variant:1.4
windows-slaves:1.8
workflow-aggregator:2.6
workflow-api:2.45
workflow-basic-steps:2.22
workflow-cps:2.92
workflow-cps-global-lib:2.19
workflow-durable-task-step:2.39
workflow-job:2.41
workflow-multibranch:2.24
workflow-scm-step:2.13
workflow-step-api:2.23
workflow-support:3.8
ws-cleanup:0.39

Shameless plug: @yogeshwari.morde I drafted a blog post recently where I did some major upgrades to my Jenkins Servers… which includes sequence for upgrading plugins. You may want to review: Back of the Napkin Guide to Updating Jenkins, for the uninitiated

tl;dr. At current Jenkins level upgrade all plug-ins to the highest compatible, Snapshot. Upgrade Jenkins to desired target; then upgrade all plug ins again.

Read thru the change logs from current to target versions, to see if any plugins are deprecated.

What Error Messages are you receiving?

We have jenkins installed where there is no internet connection. So, when I installed latest LTS with its plugins on my local and transferred those plugins to the installed location some plugins did not work as expected and were complaining about versions being mismatched. Hence, I am looking for a stable Jenkins version with its supportive plugins version which we listed in this request.

Off-line installation is beyond my experience… how are you moving the plugins? using copy/paste the plugins/ folder? or moving the hpi files?

Locally you are running the latest LTS, if you are copying plugins down to the main server, plugins may be incompatible with the older App ver.

Can you try running the local at 2.249.1, upgrade all those plugins as high as compatible, migrate to the offline-prod server. then try upgrading the sandbox Jenkins to LTS, or something intermediate if issues; repeat upgrade plugins.

Hopefully someone with more experience will chime in… the only other solution I’d be able to suggest is building Jenkins at the LTS installing each plugin fresh, and building in all the necessary configurations, then copy the image to the off-line… but then you loose all logs, certainly there must be a means to preserve the jobs/ subdirectory.

But I have a feeling carrying those hpi and upgraded war would be my best suggestion. Good Luck

so, I collected the plugin list from main location. Looked into Jenkins plugins directory and downloaded hpi files, then uploaded them on the main Jenkins server where we are trying for upgrade.

Locally, I tried installing those plugins and it installed fine, however I am not able to replicate the same builds/deployments on local as there is no other integration created.

Please help me out here.

Have you considered performing a clean installation with the specific Jenkins version on a machine with internet access? This way, you can add all the necessary plugins and later replicate the setup on your isolated machine through a simple copy/paste.