actions / runner-images

GitHub Actions runner images
MIT License
10.19k stars 3.06k forks source link

macOS 15 (Sequoia) is now available as a public beta in GitHub Actions #10686

Open erik-bershel opened 1 month ago

erik-bershel commented 1 month ago

Breaking changes

macOS-15 Sequoia is now available for all GitHub Actions. You can use the macos-15 image label in your YAML to select this image.

macOS-15 Apple Silicon

jobs:
  job:
    runs-on: macos-15
jobs:
  job:
    runs-on: macos-15-xlarge

macOS-15 Intel

jobs:
  job:
    runs-on: macos-15-large

The image is marked as beta for now. It means some software can be unstable on the new platform. Also, there could be queueing issues as the capacity will be balanced only throughout the next weeks.

Target date

Wednesday, September 25, 2024

The motivation for the changes

Possible impact

Software difference between macOS-14 and macOS-15

Tool name macOS 14 (Apple Silicon / Intel) macOS 15 (Apple Silicon / Intel) Notes
Xcode
  • 14.3.1
  • 15.0.1
  • 15.1
  • 15.2
  • 15.3
  • 15.4 (default)
  • 16.0
  • 16.1 Beta
  • 16.0 (default)
  • 16.1 Beta
Base Xcode major release for macOS-15 is Xcode 16
Clang/LLVM (Xcode) 14.* 16* Default Xcode changed to 16.0
Clang/LLVM (Homebrew) 15.* 18.* The most recent version is installed
.NET
  • 7.
  • 8.
8 .NET 7 reached EOS on May, 14
Node.js (default) 20.* 22.* The most recent version is installed
Mono 6.12.* N/A Removed from the macOS-15 images due to maintenance reasons
NuGet 6.3.* N/A Removed from the macOS-15 images due to maintenance reasons
Nunit 6.15.4 N/A Removed from the macOS-15 images due to maintenance reasons
Java
  • 8. (Intel only)
  • 11.
  • 17.
  • 21. (default)
  • 11.
  • 17.
  • 21.* (default)
Java 8 removed from the Intel-based image to keep consistency
Ruby (toolcache)
  • 3.0. (default)
  • 3.1.
  • 3.1.
  • 3.2.
  • 3.3.* (default)
The most recent versions are installed
Go (toolcache)
  • 1.20.
  • 1.21.
  • 1.22.*
  • 1.21.
  • 1.22.
  • 1.23.*
The most recent versions are installed
Android NDK
  • 24
  • 25
  • 26 (default)
  • 26
  • 27 (default)
The most recent versions are installed

Platforms affected

Runner images affected

Mitigation ways

Please report any problems with the new image to this repository.

carlocab commented 1 month ago

The macos-15 runners are missing a Command Line Tools installation at /Library/Developer/CommandLineTools.

This breaks some pre-installed tools (e.g. Homebrew LLVM), and is a regression from macos-13 and macos-14.

See this workflow run for a reproduction: https://github.com/carlocab/workflow-test/actions/runs/11046671863

The workflow compiles a simple "hello world" test.c file. This succeeds on macos-13 and macos-14, but fails on macos-15.

We can see that macos-15 records a few failures over looking for headers in /Library/Developer/CommandLineTools: https://github.com/carlocab/workflow-test/actions/runs/11046671863/job/30686438808#step:6:12

We can also check directly whether /Library/Developer/CommandLineTools exists: https://github.com/carlocab/workflow-test/actions/runs/11046671863/job/30686438808#step:5:6

OTOH, this directory exists on macos-13 and macos-14: https://github.com/carlocab/workflow-test/actions/runs/11046671863/job/30686438238#step:5:6 https://github.com/carlocab/workflow-test/actions/runs/11046671863/job/30686438238#step:6:16 https://github.com/carlocab/workflow-test/actions/runs/11046671863/job/30686438473#step:5:6 https://github.com/carlocab/workflow-test/actions/runs/11046671863/job/30686438473#step:6:16

erik-bershel commented 1 month ago

Hey @carlocab! πŸ‘‹

Thank you for the info. I'll put it back with the next release. We temporary disabled it due to a bicep behaviour with XC CLT 15.3, but now CLT 16.0 is available, so we might use it:

NachoSoto commented 1 month ago

We're seeing significantly faster build times on macos-15-xlarge compared to macos-14-xlarge πŸ”₯ which is amazing. Curious if you have a theory for why this might be?

StephenHodgson commented 1 month ago

Seems that the Machine Ids are all the same and breaks some license activations for several different software programs we use for our devOps workflows.

(Actually the same problem with macos-14 as well)

Opened separate issue for this:

muzimuzhi commented 1 month ago

Is macos-15-xl also supported?

I am adding macOS 15 support for one of the action linters, see https://github.com/rhysd/actionlint/pull/453.

themaroqa commented 1 month ago

Is there a timeline for having it available on Azure DevOps as well? @erik-bershel

erik-bershel commented 3 weeks ago

macOS-15 is now available using Azure DevOps πŸš€ More info: https://learn.microsoft.com/en-us/azure/devops/pipelines/agents/hosted?view=azure-devops&tabs=yaml

Pastajello commented 2 weeks ago

It is, but not all basic tools (android build tools) are available: https://github.com/actions/runner-images/pull/10856

CPRmichel commented 2 weeks ago

macOS-15 is now available using Azure DevOps πŸš€ More info: https://learn.microsoft.com/en-us/azure/devops/pipelines/agents/hosted?view=azure-devops&tabs=yaml

Will the Azure Devops agents be transitioned to arm architecture in the future?

Syed-RI commented 20 hours ago

Just a note and apologies if this is adding to the noise.

.NET MAUI build which targets .NET 8 is failing with the following error:

Error: /Users/runner/.dotnet/packs/Microsoft.Android.Sdk.Darwin/34.0.145/targets/Microsoft.Android.Sdk.Tooling.targets(31,5): error XA5205: Cannot find `aapt`. Please install the Android SDK Build-Tools package with the `/Users/runner/Library/Android/sdk/tools/android` program. [/Users/runner/work/dart-mobile-ui/dart-mobile-ui/Dart/Dart.csproj::TargetFramework=net8.0-android]

We were forced to change the runner to macOS15 due to .NET MAUI workload dependency on Xcode 16.

pmahend1 commented 19 hours ago

Just a note and apologies if this is adding to the noise.

.NET MAUI build which targets .NET 8 is failing with the following error:

Error: /Users/runner/.dotnet/packs/Microsoft.Android.Sdk.Darwin/34.0.145/targets/Microsoft.Android.Sdk.Tooling.targets(31,5): error XA5205: Cannot find `aapt`. Please install the Android SDK Build-Tools package with the `/Users/runner/Library/Android/sdk/tools/android` program. [/Users/runner/work/dart-mobile-ui/dart-mobile-ui/Dart/Dart.csproj::TargetFramework=net8.0-android]

We were forced to change the runner to macOS15 due to .NET MAUI workload dependency on Xcode 16.

Same here /Users/runner/hostedtoolcache/dotnet/packs/Microsoft.Android.Sdk.Darwin/34.0.143/targets/Microsoft.Android.Sdk.Tooling.targets(31,5): error XA5205: Cannot find aapt. Please install the Android SDK Build-Tools package with the /Users/runner/Library/Android/sdk/tools/androidprogram.