End of life operating systems

Beginning with Jenkins 2.407, Jenkins administrators will be warned if they are running Jenkins on an operating system that is within 6 months of its end of life date.

The warning looks like this:

The Jenkins project does not test Jenkins on operating systems that are not supported by the operating system provider. We don’t’ support Jenkins on operating systems that are not supported by the operating system provider.

The Linux support policy states that Linux versions no longer supported by operating system providers are unsupported by Jenkins.

The Windows support policy states that Windows versions no longer supported by Microsoft are unsupported by Jenkins.

End of Life Operating Systems

Red Hat Enterprise Linux 7 will be unsupported by Red Hat after June 30, 2024. The Jenkins project has decided to accelerate end of life for Jenkins on Red Hat Enterprise Linux 7 and its derivatives. Jenkins support for RHEL 7 will end Nov 16, 2023. Users running Red Hat Enterprise Linux 7 or its derivatives (like CentOS 7, Oracle Linux 7, and Scientific Linux 7) will see the warning message in Jenkins that support for Jenkins on that operating system will end Nov 6, 2023.

Alpine 3.14, Fedora 36, and Ubuntu 18.04 all will display similar messages stating that they have reached end of life.

Users of those operating systems should upgrade their operating system to a supported version.

3 Likes

That will prove really handy, thanks a lot for that, Mark!

The operating system end of life warning has been backported to Jenkins 2.401.2 after discussion in the Jenkins developer mailing list.

That will make it visible to users of the Jenkins long term support (LTS) release June 28, 2023. That is 8 weeks earlier than the blog post originally stated. Users will have 8 more weeks of notification before the November 2023 end of life for CentOS 7 in Jenkins.

1 Like

This seems odd since jenkins runs on a jdk, what’s native about jenkins?. Is this just about support or is something going to be disabled?

1 Like

That’s a fun question. Thanks for asking. Jenkins integrates with many native components, like git and OpenSSH. Integrating with the versions of native components in Red Hat Enterprise Linux 7 often requires compromises due to their age.

Git 1.8

Once Red Hat Enterprise Linux 7 is no longer supported, the git client plugin code that supports command line git 1.8 can be removed. Command line git 1.8 was released in 2012, with the last patch 1.8.5.6 released in December 2014. The current version of command line git is 2.41. Recent versions of command line git have many, many features and many, many optimizations that are not available in command line git 1.8.

Once Red Hat Enterprise Linux 7 is no longer supported, the oldest version of command line git that will need to be supported by the git client plugin is 2.20 as included in Debian 10.

OpenSSH 7.4

OpenSSH 7.4 as included in Red Hat Enterprise Linux 7 does not have the accept first option for host keys. When support for Red Hat Enterprise Linux 7 is dropped, the git client plugin can use accept first as its default and simplify ssh host key management for new users.

When Red Hat Enterprise Linux 7 is no longer supported, the older OpenSSH version to be supported will be OpenSSH 7.9 as included in Debian 10.

Those two examples are from plugins that I maintain. Other plugins may have additional simplifications they can apply when Red Hat Enterprise Linux 7 is no longer supported.

1 Like

Ah ok, not binary native but shelled calls to old utilities.

It seems No good deed goes unpunished … or hurry up and wait; not sure …

Red Hat blog: Announcing up to 4 years of Extended Life Cycle Support (ELS) for Red Hat Enterprise Linux 7

As we near the end of the standard 10-year life cycle of RHEL 7, some IT organizations are finding that they cannot complete their planned migrations before June 30, 2024. To support IT teams while they catch up on their migration schedules, Red Hat is announcing a one-time, 4 year ELS maintenance period for RHEL 7 ELS

ps: CentOS 7 will apparently still hit its end-of-life in one year on June 30 of 2024.

As far as I can tell from reading that blog post, extended life cycle support is an additional purchased item that can be added to existing purchased Red Hat Enterprise Linux subscriptions. None of the Jenkins maintainers have purchased Red Hat Enterprise Linux subscriptions as far as I know. Jenkins end of life for RHEL 7 and its derivatives is Nov 2023.

2 Likes

Red Hat

The blog post from Red Hat is similar to posts from other operating system providers. Red Hat is selling extended support contracts for Red Hat Enterprise Linux 7. They are meeting a business need for the customers that purchase their products.

Canonical

Canonical offers something similar for subscription users that are running Ubuntu 18.04. They describe their Ubuntu Pro product and its Extended Security Maintenance in their March 2023 blog post.

Microsoft

Microsoft offered something similar for subscription users running Windows 7 after its end of support in January 2020. They announced it in the post on their learning site in 2020:

Summary

The Jenkins project has not extended its Linux support policy or its Windows support policy beyond the public end of life for any of those operating systems. It does not seem reasonable to me that Jenkins as an open source project supporting publicly available operating systems would purchase extended operating system support from the operating system providers.

I’m open to disagreement from others in case they feel that there is some path where an operating system that has reached its public end of life should continue to be supported by the Jenkins project after the public end of life.

1 Like

We’re still a bit uncertain of the severity of impact of this change. Can we please get some additional clarification? For example, after the Nov 6, 2023 date, Jenkins will:

  1. stop working altogether on our existing installations on RHEL7

– OR –

  1. may still work on our existing installations on RHEL7, but we may start having issues with plugins, Git, OpenSSH, etc. and there will be no further support or patching from Jenkins and plugin creators to support old operating systems

Also, we’re assuming that the change will be applied in a Jenkins LTS version release after Nov 6th, so if we delayed updating Jenkins and plugins we may be able to buy ourselves extra time?

Any extra clarification would be much appreciated, thank you!

Thanks for asking the question. My answers are below.

Jenkins may still work on existing installations of Red Hat Enterprise Linux 7 and its derivatives after 16 Nov 2023. I’ve seen no change that will cause existing installations to stop working after 16 Nov 2023. I’d be surprised if such a change were introduced, since there is little benefit to that type of change.

Jenkins developers are not expected to accept patches after 16 Nov 2023 that are specific to fixing issues on Red Hat Enterprise Linux 7 or its derivatives. The Linux support policy describes unsupported platforms by saying:

We do not support the listed platforms and we do not accept patches.

Jenkins 2.414.3, releasing 18 Oct 2023, will be the last Jenkins long term support release to support Red Hat Enterprise Linux 7 and its derivatives. The next Jenkins LTS (baseline undecided, but something like 2.426.1) will release 16 Nov 2023 and will not support Red Hat Enterprise Linux 7 or any of its derivatives.

Jenkins project testing of Red Hat Enterprise Linux 7 and its derivatives will stop on or before 16 Nov 2023. Jenkins plugins like the ssh agents plugin and the git plugin will be free to remove the code they contain that supports the old software versions included in Red Hat Enterprise Linux 7 and its derivatives.

As a maintainer of the git plugin, after 16 Nov 2023 I intend to act as though command line git 1.8 and OpenSSH 7.4 (both included in RHEL 7) no longer exist. I’ll allow myself to make changes that rely on newer versions of command line git (like 2.11 and later) and newer versions of OpenSSH (like 7.8 and later). Some of those changes make break new releases of the git plugin on RHEL 7. If releases of the git plugin after 16 Nov 2023 are broken on RHEL 7, I don’t plan to fix those issues.

Other plugin maintainers and maintainers of Jenkins core are free to release similar changes after 16 Nov 2023. If a change released after 16 Nov 2023 breaks Jenkins core or a plugin on RHEL 7 and does not break on any other platform, that won’t be considered an issue.

The Jenkins LTS release 16 Nov 2023 will not support Red Hat Enterprise Linux 7 or its derivatives. The baseline for that LTS release has not yet been selected, but it will be something like 2.426.1.

You can choose to remain on Jenkins LTS 2.414.3 (scheduled for release on 18 Oct 2023) or on the last weekly version to support RHEL 7.

The Jenkins security team provides security fixes for the most recent Jenkins LTS release and the most recent Jenkins weekly release. Locking yourself to an outdated Jenkins LTS or weekly version is unhealthy because you won’t receive any further security fixes for Jenkins core.

2 Likes

Thank you very much for the prompt and thorough reply, much appreciated.

1 Like

Can you confirm that Jenkins will be ok to run on AL2023 (amazon linux 2023) moving forward?
We’re in the process of moving our servers off of centos7 and AL2023 is the flavor of choice it seems for us to use. But after reading this article I just wanted to make sure we weren’t missing anything and going to potentially have a bad day maintaining Jenkins on AL2023.
Thanks for any input on this!

Jenkins will be ok to run on Amazon Linux 2023 moving forward.

The Amazon Linux 2023 FAQ says:

Starting with AL2023, a new major version of Amazon Linux is released every two years, includes minor quarterly releases, and comes with five years of long-term support.

Amazon Linux 2023 installation is regularly tested from the Jenkins packaging repository.

1 Like

We cannot upgrade from RHEL7 since we are moving our systems to a new platfom, which will be generally available within a year or so, an in the mean time we have to stick with RHEL7. Is there a possibility that Jenkins will function despite the end of support, or will there be an active shutdown in the Jenkins software after november 16?

Thanks for asking. A detailed answer is available earlier in this thread.

I’m getting the error message on Ubuntu 23.04. Do you support LTS releases, only?

The operating system end of life monitor shows you the date when the operating system will no longer be supported by the Jenkins project.

It should state that Ubuntu 23.04 will not be supported by the Jenkins project after January 20, 2024, because that is the end of life for Ubuntu 23.04 according to the Ubuntu releases wiki page and the end of life date site.

The warning is visible to you because it is now less than 6 months before the end of life of Ubuntu 23.04.

We don’t test non-LTS versions of Ubuntu, but I’m not aware of any reason they would have any issue that is not also visible in LTS versions of Ubuntu.

1 Like

Thanks for clarification! :slight_smile:
I wasn’t aware EOL of Ubuntu 23.04 is < 6 months from now, and I was kinda disturbed to see a warning despite having the latest release.

1 Like

Hi,
my Jenkins controller is installed on a VM running CentOS7 and I received the CentOS7 EOL warning.

In the next few weeks I plan to migrate the installation to RHEL8, however I have a concern:
I have several agents connected to the controller, some of them running CentOS7.
If I upgrade the controller to RHEL8 will the CentOS7 agents still continue to work or will I necessarily have to migrate them to RHEL8 as well?

This question is very important because in some pipelines, unfortunately, we still have a requirement to use Java 7 which is not supported by RHEL8.

I would like to understand if this issue will force us to stay stuck with version 2.414.3 until these projects are migrated to a newer Java version.