runner-images icon indicating copy to clipboard operation
runner-images copied to clipboard

The Ubuntu 20.04 Actions runner image will begin deprecation on 2025-02-01 and will be fully unsupported by 2025-04-15

Open gdryke opened this issue 1 year ago • 26 comments

Breaking changes

We will soon start the deprecation process for Ubuntu 20.04. While the image is being deprecated, you may experience longer queue times during peak usage hours. Deprecation will begin on 2025-02-01 and the image will be fully unsupported by 2025-04-15.

To raise awareness of the upcoming removal, we will temporarily fail jobs using Ubuntu 20.04. Builds that are scheduled to run during the brownout periods will fail. The brownouts are scheduled for the following dates and times:

GitHub Actions\Azure DevOps::

  • March 4 14:00 UTC – 22:00 UTC
  • March 11 13:00 UTC – 21:00 UTC
  • March 18 13:00 UTC – 21:00 UTC
  • March 25 13:00 UTC – 21:00 UTC
  • April 1 13:00 UTC – 21:00 UTC
  • April 8 13:00 UTC – 21:00 UTC

Target date

~2025-04-01~ 2025-04-15

The motivation for the changes

We maintain the latest two stable versions of any given OS version. Ubuntu 24.04 is going GA on 2025-02-01 so we start deprecating the oldest image at that time.

Possible impact

Workflows using the ubuntu-20.04 image label should be updated to ubuntu-latest, ubuntu-22.04, ubuntu-24.04 .

Platforms affected

  • [ ] Azure DevOps
  • [x] GitHub Actions

Runner images affected

  • [x] Ubuntu 20.04
  • [ ] Ubuntu 22.04
  • [ ] Ubuntu 24.04
  • [ ] macOS 12
  • [ ] macOS 13
  • [ ] macOS 13 Arm64
  • [ ] macOS 14
  • [ ] macOS 14 Arm64
  • [ ] macOS 15
  • [ ] macOS 15 Arm64
  • [ ] Windows Server 2019
  • [ ] Windows Server 2022

Mitigation ways

N/A

gdryke avatar Dec 05 '24 04:12 gdryke

Could you please use ISO standard for dates. It is not clear what this is 2025-04-01 - April or Jan?

AlexSkrypnyk avatar Dec 16 '24 21:12 AlexSkrypnyk

That is ISO 8601.

https://www.iso.org/iso-8601-date-and-time-format.html

rtiangha avatar Dec 17 '24 05:12 rtiangha

This does not https://github.com/actions/runner-images/issues/10721 The confusion is real. It should not be a puzzle for a community to decipher the public announcements.

AlexSkrypnyk avatar Dec 17 '24 10:12 AlexSkrypnyk

Then maybe post the ISO complaint under the right issue? The dates in this issue's description are correct.

rtiangha avatar Dec 17 '24 16:12 rtiangha

I assume this only affects GitHub-hosted runner. Can i ask a related question about ubuntu 20.04 upgrade to the self-hosted runner? As long as we keep our runner API by integrating the latest release from the actions/runner project, to what point we need to start worrying about the OS version of the self-hosted runner that requires a needed upgrade?

lonex-branch avatar Jan 09 '25 22:01 lonex-branch

.

Joanna2473 avatar Feb 06 '25 08:02 Joanna2473

I just wanted to follow up on the announcement about the deprecation process. Can you provide more information on whether this will impact self-hosted runners? Thanks!

vhsantos26 avatar Feb 12 '25 10:02 vhsantos26

Does this apply to self-hosted runners as well, it is no where mentioned in the announcement/changelog

shansrii avatar Feb 13 '25 09:02 shansrii

Uninstal

Joanna2473 avatar Feb 13 '25 10:02 Joanna2473

Nothing but radio silence =\

Here's the last time this happened https://github.com/actions/runner-images/issues/6002

LostRuins avatar Feb 15 '25 11:02 LostRuins

Currently, I use Ubuntu 20.04 to assemble the Go application due to dependence on GLIBC 2.31

Can you tell you an alternative solution?

Lifailon avatar Feb 25 '25 10:02 Lifailon

Currently, I use Ubuntu 20.04 to assemble the Go application due to dependence on GLIBC 2.31

Can you tell you an alternative solution?

I'm no expert in Go or with glibc. Wouldn't it be a solution for you to use a newer runner base image (e.g., 24.04) and use a Docker image with the desired properties to build your Go application?

maxkratz avatar Feb 25 '25 10:02 maxkratz

I'm no expert in Go or with glibc. Wouldn't it be a solution for you to use a newer runner base image (e.g., 24.04) and use a Docker image with the desired properties to build your Go application?

The thing is, many people still use this version of Ubuntu, mostly in organizations because of software dependencies and the complexity of migration. Ubuntu 24.04 uses GLIBC version 2.34, so it does not allow to run an executable file built in Ubuntu 24.04, but running from source will work. Perhaps there is an alternative solution without a build dependency, I guess I'll have to look for it.

Lifailon avatar Feb 25 '25 10:02 Lifailon

The thing is, many people still use this version of Ubuntu, mostly in organizations because of software dependencies and the complexity of migration.

Yes, but Ubuntu 20.04 will reach its normal support end in May 2025: https://ubuntu.com/about/release-cycle

Ubuntu 24.04 uses GLIBC version 2.34, so it does not allow to run an executable file built in Ubuntu 24.04, but running from source will work. Perhaps there is an alternative solution without a build dependency, I guess I'll have to look for it.

I get that but is it not possible to use a container, e.g., with Docker to run an older version of Ubuntu (or another Linux OS) with a glibc version you are comfortable with as I mentioned above?

maxkratz avatar Feb 25 '25 11:02 maxkratz

@maxkratz I didn't understand you right away, yes, launching in a container is not a bad idea 👍

Lifailon avatar Feb 25 '25 11:02 Lifailon

Is there a way to make Dependabot do pull requests with such updates? We don't need to wait for deprecation to do updates, but it's hard to remember that we should do. The upgrade for us was smooth as we run everything in Docker anyway, but we would prefer to control & review updates for tracking purposes.

ad-m-ss avatar Feb 27 '25 01:02 ad-m-ss

As a temporary measure, we (DevOps team) have updated the image to Ubuntu 22.04 for the Ubuntu_20.04_2019 and ubuntu_20.04_platform runners. Consequently, we kindly request that you update the workflows utilizing these two runners to use ubuntu-latest, ubuntu-22.04, or ubuntu-24.04 as appropriate. Please note that we will be phasing out the 20.04 runners in the near future.

kalyan-gavini-epam avatar Mar 04 '25 20:03 kalyan-gavini-epam

It is now 9:03 GMT on the 5th March. I am getting the brownout error. See image. What is going on? I thought the brownout times were as follows:

March 4 14:00 UTC – 22:00 UTC March 11 13:00 UTC – 21:00 UTC March 18 13:00 UTC – 21:00 UTC March 25 13:00 UTC – 21:00 UTC

Image

jonGigPig avatar Mar 05 '25 09:03 jonGigPig

Does this mean the code base for generating an Ubuntu 20.04 image from this repo will also be removed on 04-01-2025? If not, when is the planned date for that?

jsloan117 avatar Mar 05 '25 11:03 jsloan117

We've made the decision to postpone the Ubuntu 20.04 image deprecation by two weeks. The Ubuntu 20.04 image will now be fully deprecated on 2025-04-15, with two additional brownouts scheduled for 2025-04-01 13:00-21:00 UTC and 2025-04-08 13:00-21:00 UTC.

These brownout dates will impact both GitHub Actions and Azure DevOps images.

gdryke avatar Mar 28 '25 19:03 gdryke

Do we have a time frame for the 15th? When we officially deprecate 20.04?

KFo3 avatar Apr 14 '25 17:04 KFo3

Be aware that if you are building AppImages using the linuxdeployqt tool then you are really out of luck for the moment as it won't run in the Ubuntu 22.04 LTS runner - the maintainer of that tool insists that you use the oldest supported Ubuntu LTS instance and since 20.04 does not officially reach EOL until next month he won't update the tool to match the later libc (I think it is) until (at least) then.

https://github.com/probonopd/linuxdeployqt/issues/630

SlySven avatar Apr 15 '25 13:04 SlySven

Do we have a time frame for the 15th? When we officially deprecate 20.04?

The standard ubuntu-20.04 is already off, larger runners using the ubuntu-20.04 image will be breaking over the course of the day.

As for the questions on self-hosted runner support, Ubuntu 20.04 will remain supported for the Actions agent. Watch the GitHub changelog for announcements on any upcoming deprecations, it's usually tied to dotnet or node versions losing support on the given OS, so it will be a longer time horizon than this image deprecation.

gdryke avatar Apr 15 '25 16:04 gdryke

Hello

AnonymousScript007 avatar Apr 24 '25 10:04 AnonymousScript007

You do realize that this upgrade has entirely made Github Codespaces useless because packages that rely on Github actions now are using the latest unbuntu, which requires a hire GLIBC library and if you try to run any of these packages on Codespaces you get an error that the GLIBC is not found, so you are stuck and can't code on Codespaces because you don't have control over the OS on codespaces. So Github broke their own Codespaces platform? See this for example: https://github.com/cloudflare/workers-sdk/issues/7911 - We can't run any of our Cloudflare applications on Codespaces anymore as they all throw the GLIBC error as workered builds from GitHub actions and requires the higher version of ubuntu but codespaces doesn't?

osseonews avatar May 02 '25 10:05 osseonews

deprecation of Ubuntu 20.04 for GitHub Actions and Azure DevOps runners. The transition to Ubuntu 22.04 and 24.04 is underway, with brownout periods scheduled to alert users before full support ends on April 15, 2025.

If you're using Ubuntu 20.04 in your workflows, it’s a good time to update your runner configurations to avoid disruptions. You might want to:

Switch to ubuntu-latest, ubuntu-22.04, or ubuntu-24.04 for future compatibility.

Test your workflows with newer versions to ensure seamless transitions.

Review dependencies that could be affected by the upgrade.

akabarki76 avatar Jun 02 '25 12:06 akabarki76

Image why is your systim still having struggles with my image handling/scaling? When I can help to resolve this problem .....;-->) no problem! Let us talk about your V Codes kreation &/or-> algorytmen.

PS: How you can seeing in my (... in this diskussion ...) on my picture is there an specific Error. @GitHub is meaning/ your (@gdryke ) konstruktion to scale every image algos/ecos is not enough for an 100% succes workflow.

RFOF-NETWORK avatar Jun 11 '25 01:06 RFOF-NETWORK