Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

> ### will begin on December 5th and will complete on January 17th, 2025. #11273

Open
jommeke22f opened this issue Jan 3, 2025 · 2 comments
Open

Comments

@jommeke22f
Copy link

          > ### Rollout will begin on December 5th and will complete on January 17th, 2025.

Breaking changes Ubuntu 24.04 is ready to be the default version for the "ubuntu-latest" label in GitHub Actions and Azure DevOps.

Target date This change will be rolled out over a period of several weeks beginning December 5th and will complete on January 17th, 2025.

The motivation for the changes GitHub Actions and Azure DevOps have supported Ubuntu 24.04 in preview mode since May 2024, and starting from July 2024 Ubuntu 24.04 is generally available for all customers. We have monitored customer feedback to improve the Ubuntu 24.04 image stability and now we are ready to set it as the latest. There are a set of packages listed below that we have removed from the Ubuntu 24 image. Please review the list carefully to see if you will be impacted by these changes. We have made cuts to the list of packages so that we can maintain our SLA for free disk space. The images have grown so large we are in danger of violating our SLA if we keep the package list as-is.

The factors we took into consideration when removing packages are as follows:

  • How long does it take to install the tool at runtime?
  • How much space does it take up on the image?
  • How many users are there of the tool?

We understand that our reasoning may not make sense to some of you out there, but please bear in mind that we tried to keep disruptions as minimal as possible, and tried to keep the best interests of the community at large in mind. There is a very large and diverse community using our images, and as much as we would like to, we cannot pre-install every tool on these images.

Platforms affected

  • Azure DevOps
  • GitHub Actions

Mitigation ways Steps or options for impact mitigation If you see any issues with your workflows during transition period:

  • Switch back to Ubuntu 22 by changing workflow YAML to use runs-on: ubuntu-22.04 We support two latest LTS Ubuntu versions, so Ubuntu 22 will still be maintained for the next 2 years.
  • File an issue in this repository

Software Differences The Ubuntu 22.04 image has a different set of software than Ubuntu 24.04. The most significant changes are listed in the table below:

Tool name Ubuntu 22.04 Ubuntu 24.04 Notes
Clang

  • 13.*

  • 14.* (default)

  • 15.*

  • 16.*

  • 17.*

  • 18.* (default)

The most recent versions are installed
GCC / GNU C++ / GNU Fortran

  • 9.*

  • 10.*

  • 11.*

  • 12.*

  • 13.*

  • 12.*

  • 13.*

  • 14.*

The most recent versions are installed
PHP 8.1.* 8.3.* The most recent version are installed
Java

  • 8.*

  • 11.* (default)

  • 17.*

  • 21.*

  • 8.*

  • 11.*

  • 17.* (default)

  • 21.*

Default Java switched to 17.* for Ubuntu 24.04 image.
Python

  • 3.7.* (cached)

  • 3.8.* (cached)

  • 3.9.* (cached)

  • 3.10.* (default)

  • 3.11.* (cached)

  • 3.12.* (cached)

  • 3.9.* (cached)

  • 3.10.* (cached)

  • 3.11.* (cached)

  • 3.12.* (default)

Pre-cached versions currently unavailable. Default version switched to the latest one. On GitHub Actions, actions/setup-python can install any version on-flight so this change doesn't impact users
Go

  • 1.20.* (cached)

  • 1.21.* (default)

  • 1.22.* (cached)

  • 1.21.* (cached)

  • 1.22.* (cached)

  • 1.23.* (default)

If your use-case requires using any of these versions, consider using tasks to install Go on-flight:

PyPy

  • 3.7.* (cached)

  • 3.8.* (cached)

  • 3.9.* (cached)

  • 3.10.* (cached)

  • 3.9.* (cached)

  • 3.10.* (cached)

Deprecated all the versions besides the most recent ones
Ruby

  • 3.0.* (default)

  • 3.1.* (cached)

  • 3.2.* (default)

We need to update 3.3.5
Node.js

  • 16.* (cached)

  • 18.* (default)

  • 20.* (cached)

  • 16.* (cached)

  • 18.* (cached)

  • 20.* (default)

If your use-case requires using any of these versions, consider using tasks to install Node.js on-flight:

Heroku latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
Leiningen latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
Mono / MSBuild / NuGet latest available - Software is not available for Ubuntu 24 at the moment.
Terraform latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
R latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
SVN latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
Alibaba Cloud CLI latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
Netlify CLI latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
OpenShift CLI latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
ORAS CLI latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
Vercel CLI latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
/ latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
Cargo audit/clippy/outdated latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
.NET Core SDK

  • 6.*

  • 7.*

  • 8.*

  • 8.*

Please consider using tasks to install any version on-flight:

PostgreSQL 14.* 16.* More recent version are installed
MS SQL Server Client Tools sqlcmd / - Removed from the Ubuntu 24.04 image due to maintenance reasons.
Module latest available - Removed from the Ubuntu 24.04 image due to maintenance reasons.
Android Command Line Tools 9.0 12.0 The most recent version are installed
Android SDK Build-tools

  • 34.0.0

  • 33.0.0

  • 33.0.1

  • 33.0.2

  • 33.0.3

  • 32.0.0

  • 31.0.0

  • 34.0.0

The most recent version are installed
Android NDK

  • 25.* (default)

  • 26.*

  • 27.* (default)

  • 26.*

The most recent version are installed
Cached Docker images

  • alpine:3.16
  • alpine:3.17
  • alpine:3.18
  • debian:10
  • debian:11
  • moby/buildkit:latest
  • node:16
  • node:
  • node:18
  • node:
  • node:20
  • node:
  • ubuntu:20.04
  • ubuntu:22.04
  • Removed from the Ubuntu 24.04 image due to maintenance reasons.

Originally posted by @Kya123iu in #10636 (comment)

@mwaddell
Copy link

mwaddell commented Jan 3, 2025

The loss of sqlcmd is breaking a lot of our existing actions. Is there a separate action I can run to add this is (like I do with dotnet, etc)?

@vidyasagarnimmagaddi
Copy link
Contributor

Hi @jommeke22f , Thank you for bringing this issue to our attention. We are looking into this issue and will update you on this issue after investigating.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants
@mwaddell @vidyasagarnimmagaddi @hemanthmanga @jommeke22f and others