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

ubuntu-latest bump from 22 to 24 fails to include sbt, nvm, and probably more #10788

Closed
2 of 15 tasks
ljharb opened this issue Oct 15, 2024 · 6 comments
Closed
2 of 15 tasks

Comments

@ljharb
Copy link

ljharb commented Oct 15, 2024

Description

See https://twitter.com/ljharb/status/1846298893447004498

Namely, with no announcement, the Ubuntu version seems to have been bumped from 22 to 24, and the current images fail to ship nvm, as well as sbt, and presumably a lot more.

Platforms affected

  • Azure DevOps
  • GitHub Actions - Standard Runners
  • GitHub Actions - Larger Runners

Runner images affected

  • 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

Image version and build link

https://github.com/tc39/ecma262/actions/runs/11268873692 works

https://github.com/tc39/ecma262/actions/runs/11354432242 does not

Is it regression?

yes

Expected behavior

I expect nvm and sbt to be available by default on the ubuntu image, always.

Actual behavior

They aren't there.

Repro steps

See https://github.com/tc39/ecma262/actions/runs/11354432242

@ljharb
Copy link
Author

ljharb commented Oct 15, 2024

While I eventually discovered #10636, given that github has advised everyone to use "latest" for years, it's just not acceptable to ever ship breaking changes that aren't absolutely necessary.

@RaviAkshintala
Copy link
Contributor

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

@voxpelli
Copy link

The announcement of the ubuntu-24.04 runner image beta linked to a list of the included software rather than the diff that's included in the #10636 issue. Neither is it in the general availability announcement (which is the same which announced the ubuntu-latest move)

I think that's one of the issues here – I follow the announcements on the blog, but the initial beta announcement simply said:

Some users may notice differences in workflows as the Ubuntu 22.04 image has different tools and tool versions, see the full list of changed software.

And the full list is the actual full list, not the diff that #10636 has.

@kishorekumar-anchala
Copy link
Contributor

Hi @ljharb ,

nvm has been added and available with ubuntu-24 and coming to sbt we request to install it on runtime . thank you!.

@tsawada
Copy link

tsawada commented Nov 30, 2024

@kishorekumar-anchala
Thank you for working on this issue. I understand the need to carefully decide what should be included, but I'd really appreciate if you consider keeping sbt in the image.

sbt is a lightweight shellscript. It is less than 30KB with no new dependencies required on the image (just curl). It reads the version from build files and downloads the necessary binary, thus the script is independent from the binary version, and the script itself rarely needs updates.

Currently, 14k+ public workflows rely on sbt in ubuntu-latest, and I can imagine there are more private workflows. Rolling out 24.04 as is will break all these builds, potentially causing hundreds of users to spend significant amount of time in total, for troubleshooting, fixing, reviewing, and merging changes to address the incompatibility.

I believe including this small script in the bin directory and preserving the current behavior will improve the overall developer experience, more than the amount of cost and effort required.

Thank you for considering this request!

@hughsimpson
Copy link

For those who're missing sbt support, adding a cheeky - uses: sbt/setup-sbt@v1 step should be enough to work with 24.x. I don't see it ever being added back to the base since it's been dropped from mac images too.

raboof added a commit to raboof/sbt-bom that referenced this issue Dec 9, 2024
`ubuntu-latest` no longer contains sbt, so install it explicitly

actions/runner-images#10788 (comment)
raboof added a commit to raboof/sbt-dependency-submission that referenced this issue Dec 9, 2024
`ubuntu-latest` no longer contains sbt, so install it explicitly

actions/runner-images#10788 (comment)
kittsville added a commit to kittsville/Advent-of-Code-2023 that referenced this issue Dec 11, 2024
Latest Ubuntu no longer includes SBT
actions/runner-images#10788
kittsville added a commit to The-Silverwood-Institute/Recibase that referenced this issue Dec 11, 2024
Latest Ubuntu no longer includes SBT
actions/runner-images#10788
kittsville added a commit to The-Silverwood-Institute/Recibase that referenced this issue Dec 11, 2024
Latest Ubuntu no longer includes SBT
actions/runner-images#10788
generalmimon added a commit to kaitai-io/kaitai_struct_compiler that referenced this issue Dec 26, 2024
As of December 2024, `ubuntu-latest` now stands for `ubuntu-24.04`,
which unlike the previous version `ubuntu-22.04` no longer has `sbt`
preinstalled, see
https://github.com/sbt/setup-sbt/tree/v1.1.5?tab=readme-ov-file#why-is-this-github-action-needed

See also
* actions/runner-images#10767
* actions/runner-images#10788
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

6 participants