actions / runner-images

GitHub Actions runner images
MIT License
9.17k stars 2.84k forks source link

Add macOS 14 (Sonoma) Runner Image #7508

Closed Steve-Glass closed 3 months ago

Steve-Glass commented 1 year ago

Tool name

macOS 14

Tool license

TBD

Add or update?

Desired version

Beta

Approximate size

No response

Brief description of tool

No response

URL for tool's homepage

No response

Provide a basic test case to validate the tool's functionality.

No response

Platforms where you need the tool

Runner images where you need the tool

Can this tool be installed during the build?

No response

Tool installation time in runtime

No response

Are you willing to submit a PR?

No response

Steve-Glass commented 1 year ago

This issue a placeholder and will be updated after WWDC 2023.

fumoboy007 commented 8 months ago

Hi, is there an existing issue tracking the graduation of macOS 13 to GA (a.k.a. macos-latest)?

mrackwitz commented 8 months ago

With the release candidate available for Sonoma, what's the timeline to be made available as a GitHub Actions runner?

mikhailkoliada commented 8 months ago

Hello, no earlier than the official release comes out, we do not provide betas/rcs

Robertorosmaninho commented 7 months ago

Hello! Following @mrackwitz question,now that the official release is available for Sonoma, what's the timeline to be made available as a GitHub Actions runner?

paulofierro commented 7 months ago

Hi folks, it's been 2 weeks since Sonoma dropped. Any news on this front?

ecnepsnai commented 7 months ago

3 weeks since Sonoma was released. Could we please get an update or at least a confirmation that this is being worked on?

Amnell commented 6 months ago

Will this be a repetition of #6426 where it took more than 6 months from public release from Apple until an image was available at GitHub?

paulofierro commented 6 months ago

Quoting @Steve-Glass from 7 months ago when discussing why it took 6 months to get a macOS 13 runner and how things will improve:

Our team is not aware of any hardware compatibility requirements that would prevent us from prioritizing and providing the macOS 14 runner image in a timely manner.

Granted, it's "only" been a month, but we're now looking at alternatives. It's frustrating that this seems to happen with every new version of macOS. Its not like they're a surprise.

BenjaminBhuyanYoung commented 6 months ago

Is there any timeline for macOS 14/Sonoma?

RyosukeCla commented 6 months ago

Is there any progress for macOS 14/Sonoma?

Andrewangeta commented 6 months ago

Any timeline on when macOS Sonoma will be supported? Kinda getting long in the tooth here.

dvosscricut commented 6 months ago

me too, I can't even run Xcode 14.2 on Sonoma, I'm stuck at Xcode 15! Would be really helpful if GitHub action runners could match!

mrackwitz commented 6 months ago

@dvosscricut Xcode 15.0.1 is available on the latest macOS 13 runners. (You don't need Sonoma anymore to run Xcode 15, at least ever since the RC)

Andrewangeta commented 6 months ago

Just gonna migrate to XCode cloud for my iOS stuff.

pafdad commented 5 months ago

Hello

Please could we get a response on this thread? Would be great to have some communication from GitHub on this matter please.

@Steve-Glass and co, any updates on this please? Should we who want to use Sonoma consider using CircleCI or Xcode Cloud instead of GitHub Hosted Runners?

Thank you in advance.

fumoboy007 commented 5 months ago

@Steve-Glass @mikhailkoliada Please say something for the sake of GitHub’s reputation. I get that there may be challenges or that this issue may not even be a high priority. However, complete silence is worse than the delay.

Just a few sentences should suffice. For example:

Very sorry for the delay. Our team is currently stretched thin working on X, Y, and Z issues, which management has deemed to be a higher priority. We aim to get around to this issue sometime next month.

Steve-Glass commented 5 months ago

πŸ‘‹ Our team has already started preparations for the macOS 14 public beta. We expect the runner image to be made available in January 2024.

gereons commented 5 months ago

Very disappointed to see that many months of delay is what is considered top priority.

andrewdavidmackenzie commented 5 months ago

It seems you can set the target os as macos-14 and the workflow and job will "run", but it will suspect forever waiting for a runner to execute it?

"Requested labels: macos-14 Job defined at: andrewdavidmackenzie/flow/.github/workflows/build_and_test.yml@refs/heads/master Waiting for a runner to pick up this job..."

brian-kayfitz commented 4 months ago

Any updates on this?

My team might have to stop using GitHub Actions soon because of the inability to use the latest iOS SDK. There were some breaking changes that Apple made to EventKit that we were forced to make our app compile in the latest version of Xcode, but consequently, we can no longer use GitHub Actions to compile release builds.

If it's any consolation, this is the required API: https://developer.apple.com/documentation/eventkit/ekeventstore/4162272-requestfullaccesstoevents

dungi commented 4 months ago

Any updates on this?

My team might have to stop using GitHub Actions...

The latest Xcode is also running on macOS 13. no need to wait for 14.

brian-kayfitz commented 4 months ago

Any updates on this? My team might have to stop using GitHub Actions...

The latest Xcode is also running on macOS 13. no need to wait for 14.

That's great, thanks @dungi I tried using macos-13-large to compile the app and still got the same swift error. Swift Compiler Error (Xcode): Value of type 'EKEventStore' has no member 'requestFullAccessToEvents'

Is macos-13-large also not using the most recent version of the iOS SDK?

dungi commented 4 months ago

Is macos-13-large also not using the most recent version of the iOS SDK?

Did you tried setting the newest xcode version and Selecting the newest sdks in your project file?

chriswooden commented 4 months ago

πŸ‘‹ Our team has already started preparations for the macOS 14 public beta. We expect the runner image to be made available in January 2024.

Any update on this eta? We're seeing increased test time and intermittent timeouts with Xcode 15.1 on macOS 13, so forced to roll back to Xcode 14. Understand macOS 14 resolves these Xcode 15 issues? Frustrating we still can't make use of iOS 17 apis in January 😞

shagedorn commented 4 months ago

@chriswooden we've finally seen a return to predictable and reasonable unit test runtimes with the adoption of Xcode 15.1, but we also needed to make sure our tests run on an iOS 17.2 runtime simulator. It's only been a few days, but we've had very stable (and fairly fast) results since then. Our test setup uses the macos-13-xlarge aka M1 runners.

That said, we are also (still) wondering when macOS 14 nodes arrive, given they will sooner or later become a requirement for the latest Xcode versions. But for the time being, we have no hard dependency on it.

jacobsapps commented 4 months ago

Hey @chriswooden, long time no speak! Hope all is well

Surprised by how low-priortiy this issue is being treated considering mac runners costs 10x as much as others. Is everyone just rolling self-hosted?

chriswooden commented 4 months ago

@shagedorn Thanks for the tip, we hadn't tried this previously but can confirm it improves things.

Hey @jacobsapps πŸ‘‹ We did consider self-hosting - seemed like a decent justification to get the company to buy us some Mac Pros... still waiting to hear back on that suggestion though... πŸ˜„

iosdevben commented 4 months ago

I've come across a bug with the iOS Simulator ignoring the language I set in the xctestplan, which is apparently resolved when run on macOS Sonoma.

Very keen to see GitHub release the macOS 14 xlarge runner.

mariusfanu-metrobank commented 4 months ago

On 12 September 2023 Apple announced the following here :

Starting in April 2024, apps submitted to the App Store must be built with Xcode 15 and the iOS 17 SDK, tvOS 17 SDK, or watchOS 10 SDK (or later).

Currently there is no production ready way to run Xcode 15 as macOS 13 runner image is still in beta/preview and macOS 14 is still work in progress.

Given that we are only a few months away from hitting the hard requirement from Apple, it would be great to have some visibility on what are your expected timelines when these will be provided.

On Azure DevOps Pipelines when updating from macOS 12 to macOS 13 while still using Xcode 14.2 the build time increased ~4x times and testing increased ~7x times

@Steve-Glass do you have any timelines or additional information? This would be very helpful for us to at least plan for

The only information that I've found here is a timeline of January - March, but it would be great if we can get a more accurate date. That is very close to Apple's April deadline, and also looking at history I can see this date has shifted many times in the past, from Q3 2023 to now Q1 2024, which is worrying

mbibosch commented 4 months ago

@mariusfanu-metrobank you can use macos-13 runner to build with Xcode 15.1 at least and so deliver to app store

    runs-on: macos-13
      - name: Select Xcode version
        uses: maxim-lobanov/setup-xcode@v1
        with:
          xcode-version: 15.1
dungi commented 4 months ago

Or just run: sudo xcode-select -s /Applications/Xcode_15.2.app

mariusfanu-metrobank commented 4 months ago

@mbibosch Yes, but it is still in beta and not production ready.

Also as mentioned above it has performance issues in terms of build & testing times (4x and 7x respectively for our project), so this is not ideal.

Screenshot 2024-01-15 at 12 54 55
shagedorn commented 4 months ago

@mariusfanu-metrobank have you tried this? This works very well for us since Xcode 15.1 has been made available.

The beta label shouldn't matter too much, given the software that actually produces the shipping artefacts (Xcode) is not beta, so I don't see a production-relevant risk at this stage.

mariusfanu-metrobank commented 4 months ago

HI @shagedorn do you mean to use the macos-13-xlarge agents? Unfortunately I don't think these are available on Azure DevOps

Also our project would have different issues if moving to ARM based Macs, for example snapshots test will fail due to tiny differences in how images are generated etc.

shagedorn commented 4 months ago

@mariusfanu-metrobank my focus in that comment was meant to be on adopting Xcode 15.1 (which is now available) and making sure to use it with iOS 17.2 runtime simulators. We have a script to create a new simulator for each CI job to not take any chances:

echo "Removing all simulators"
xcrun simctl delete all

echo "Creating new test simulator"
xcrun simctl create MyTestSimulator com.apple.CoreSimulator.SimDeviceType.iPhone-15 com.apple.CoreSimulator.SimRuntime.iOS-17-2

echo "Listing all simulators for confirmation"
xcrun simctl list

(this is executed via fastlane which pins down the Xcode/xcrun version to Xcode 15.1)

We have not tried this on Intel runners so I don't know if this helps in the same way, but for Apple Silicon runners, this combination has resolved all the CI issues (especially with regard to unit test duration) we've been seeing since Xcode 15.0 came out.

mariusfanu-metrobank commented 4 months ago

Good to know, thanks @shagedorn

vlad-buhaescu-qoob commented 4 months ago

Also looking into this as we updated our machines to Sonoma.

remyjette commented 4 months ago

We have not tried this on Intel runners so I don't know if this helps in the same way, but for Apple Silicon runners, this combination has resolved all the CI issues

Sadly this didn't help for me using the macos-13 (intel) agent in Azure DevOps, but thank you for posting it

mariusfanu-metrobank commented 4 months ago

Seems like macOS 14 will be added soon according to #9179

iosdevben commented 4 months ago

Removing and recreating the simulators fixed the issues for me.

mikhailkoliada commented 3 months ago

As of https://github.com/actions/runner-images/issues/9254 and https://github.com/actions/runner-images/issues/9255 OS14 is now available!

svaldetero commented 3 months ago

@mikhailkoliada Do we have an item to follow or a way to know about Azure Devops availability? It is checked in the issue description above but I get ##[warning]An image label with the label macOS-14 does not exist. when I try to use it.

mariusfanu-metrobank commented 3 months ago

+1

filipw commented 3 months ago

The issue says:

Platforms where you need the tool

[x] Azure DevOps [x] GitHub Actions

This was closed as completed, but the announcement only mentions GitHub Actions, and not ADO

Platforms affected

[ ] Azure DevOps [x] GitHub Actions

I think it should be reopened until Azure DevOps support is added.

billnbell2 commented 3 months ago

When is beta going to be released for Mac OS 14 on M1/M2 chips? I see the roadmap but no dates? Are we getting closer to a date?

https://ch1n2.wordpress.com/2022/09/19/how-to-deploy-an-ssis-project-via-azure-devops/

3a4oT commented 3 months ago

The issue says:

Platforms where you need the tool [x] Azure DevOps [x] GitHub Actions

This was closed as completed, but the announcement only mentions GitHub Actions, and not ADO

Platforms affected [ ] Azure DevOps [x] GitHub Actions

I think it should be reopened until Azure DevOps support is added.

Agree! Can we please get an update for Azure DevOps?

muellnes commented 3 months ago

Included with #8971

jtromo commented 2 months ago

@muellnes https://github.com/actions/runner-images/issues/8971 is for adding ARM64 runners and this ticket is for a general macOS 14 image so it seems appropriate to keep this open.

jtromo commented 2 months ago

Note that Apple will start requiring Xcode 15 or later April 19 which requires macOS 14 so this is going to be a deal breaker for any iOS developers using Azure DevOps.

ITMS-90725: SDK version issue - This app was built with the iOS 16.2 SDK. Starting April 29, 2024, all iOS and iPadOS apps must be built with the iOS 17 SDK or later, included in Xcode 15 or later, in order to be uploaded to App Store Connect or submitted for distribution.