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

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

Open erik-bershel opened this issue 1 year ago • 21 comments

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

  • https://github.com/github/roadmap/issues/987
  • https://github.com/actions/runner-images/issues/10632
  • https://github.com/actions/runner-images/discussions/10472

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

  • [ ] Azure DevOps
  • [X] GitHub Actions

Runner images affected

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

Mitigation ways

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

erik-bershel avatar Sep 25 '24 16:09 erik-bershel

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

carlocab avatar Sep 26 '24 06:09 carlocab

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:

  • https://github.com/actions/runner-images/pull/10691

erik-bershel avatar Sep 26 '24 14:09 erik-bershel

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?

NachoSoto avatar Sep 26 '24 18:09 NachoSoto

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:

  • https://github.com/actions/runner-images/issues/10773

StephenHodgson avatar Sep 27 '24 00:09 StephenHodgson

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.

muzimuzhi avatar Sep 27 '24 01:09 muzimuzhi

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

themaroqa avatar Oct 09 '24 09:10 themaroqa

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

erik-bershel avatar Oct 24 '24 10:10 erik-bershel

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

Pastajello avatar Oct 30 '24 07:10 Pastajello

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?

CPRmichel avatar Oct 31 '24 11:10 CPRmichel

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.

Syed-RI avatar Nov 14 '24 14:11 Syed-RI

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.

pmahend1 avatar Nov 14 '24 15:11 pmahend1

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.

I have the same issue. Is there a resolution to this?

amit-thapa avatar Nov 18 '24 12:11 amit-thapa

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.

I have the same issue. Is there a resolution to this?

Same too. What is the workaround ? :(

nk54 avatar Nov 18 '24 13:11 nk54

The issue with Android build-tools will be resolved with the next image update. PR: https://github.com/actions/runner-images/pull/10875

During runtime workaround should be something like that:

          SDKMANAGER=$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager
          $SDKMANAGER "build-tools;35.0.0"
          echo "$ANDROID_HOME/build-tools/35.0.0" >> $GITHUB_PATH #If you need it to be in path of course 

cc: @nk54, @amit-thapa, @ph

erik-bershel avatar Nov 18 '24 14:11 erik-bershel

Hey @CPRmichel!

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

There is no such plans at the moment. But if anything changes in our plans we'll announce it there: https://github.com/actions/runner-images/issues/8971

erik-bershel avatar Nov 18 '24 14:11 erik-bershel

@erik-bershel when is the planned release for PR: https://github.com/actions/runner-images/pull/10875 ? I see it being merged but I still see the issue.

pmahend1 avatar Nov 18 '24 15:11 pmahend1

Hey @pmahend1! In progress for macos-15-arm64 (macos-15 YAML label on GitHub) here: https://github.com/actions/runner-images/pull/10991; expected to be done by the end of this week. Intel-based macos-15 for Azure DevOps is pending, no ETA available at the moment.

erik-bershel avatar Nov 18 '24 17:11 erik-bershel

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.

I have the same issue. Is there a resolution to this?

Add this task to your pipeline yaml:

  • task: Bash@3 displayName: "Install Android SDK and Build Tools" inputs:
    targetType: "inline" script: | export ANDROID_HOME=$HOME/Library/Android/sdk export PATH=$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/build-tools/34.0.0:$ANDROID_HOME/platform-tools:$PATH mkdir -p $ANDROID_HOME/cmdline-tools/latest mkdir -p $ANDROID_HOME/build-tools sdkmanager --install "cmdline-tools;latest" "platform-tools" "build-tools;34.0.0" "platforms;android-34" yes | sdkmanager --licenses

rkops-bd avatar Nov 19 '24 06:11 rkops-bd

Hey @CPRmichel!

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

There is no such plans at the moment. But if anything changes in our plans we'll announce it there: #8971

Thank you, even though thats sad to hear. I think it does not make sense to use Azure Devops for mobile app projects going forward.

CPRmichel avatar Nov 19 '24 15:11 CPRmichel

Hey @pmahend1! In progress for macos-15-arm64 (macos-15 YAML label on GitHub) here: #10991; expected to be done by the end of this week. Intel-based macos-15 for Azure DevOps is pending, no ETA available at the moment.

Hi @erik-bershel is there an ETA available now macos-15 for Azure Dev Ops?

amit-thapa avatar Nov 22 '24 16:11 amit-thapa

Hey @pmahend1! In progress for macos-15-arm64 (macos-15 YAML label on GitHub) here: #10991; expected to be done by the end of this week. Intel-based macos-15 for Azure DevOps is pending, no ETA available at the moment.

Hi @erik-bershel is there an ETA available now macos-15 for Azure Dev Ops?

👋 Yep, we fixed the issue on our side 🎉 and expecting new release with the update to be available by the end of the next week.

erik-bershel avatar Nov 22 '24 16:11 erik-bershel

Please consider again to add vcpkg to macos images. +1 to add vcpkg images.

https://github.com/actions/runner-images/issues/9286#issuecomment-1927013243

talregev avatar Jan 21 '25 07:01 talregev

Image For some reason macOS 15.0 released to general availability in Sep 3 2024, for some reason I run my hackintosh on the SMBIOS imacpro1,1 (Intel) and the stable release (15.2) works fine why this is beta????

enessmr avatar Jan 25 '25 19:01 enessmr

macOS-15 becoming GA soon! 🎉

  • https://github.com/actions/runner-images/issues/11486

Since it I am going to close this announcement as completed.

erik-bershel avatar Jan 27 '25 13:01 erik-bershel