actions / runner-images

GitHub Actions runner images

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

The macOS 10.15 Actions runner image will begin deprecation on 5/31/22 and will be fully unsupported by 12/1/22 for GitHub and ADO

Steve-Glass opened this issue · comments

Breaking changes

GitHub Actions is starting the deprecation process for macOS 10.15. While the image is being deprecated, You may experience longer queue times during peak usage hours. Deprecation will begin on 5/31/2022 and the image will be fully unsupported by 12/1/22

To raise awareness of the upcoming removal, we will temporarily fail jobs using macOS 10.15. Builds that are scheduled to run during the brownout periods will fail. The brownouts are scheduled for the following dates and times:

GitHub Actions:

  • August 26, 14:00 UTC - August 26, 18:00 UTC
  • September 2, 14:00 UTC - September 2, 18:00 UTC
  • September 16, 14:00 UTC - September 16, 18:00 UTC
  • September 23, 14:00 UTC - September 23, 18:00 UTC
  • October 7, 14:00 UTC - October 7, 20:00 UTC
  • October 14, 14:00 UTC - October 14, 20:00 UTC
  • October 21, 14:00 UTC - October 21, 20:00 UTC
  • October 28, 14:00 UTC - October 28, 20:00 UTC
  • November 4, 14:00 UTC - November 4, 20:00 UTC
  • November 11, 14:00 UTC - November 11, 20:00 UTC
  • November 18, 14:00 UTC - November 18, 20:00 UTC
  • November 25, 14:00 UTC - November 25, 20:00 UTC

Azure DevOps

  • August 1, 12:00 UTC - August 1, 14:00 UTC
  • August 9, 16:00 UTC - August 9, 18:00 UTC
  • August 17, 14:00 UTC - August 17, 18:00 UTC
  • August 25, 14:00 UTC - August 25, 20:00 UTC
  • September 2, 12:00 UTC - September 2, 22:00 UTC
  • September 8, 00:00 UTC - September 9, 00:00 UTC
  • September 14, 00:00 UTC - September 15, 00:00 UTC
  • September 20, 00:00 UTC - September 21, 00:00 UTC
  • September 26, 00:00 UTC - September 27, 00:00 UTC
  • October 14, 14:00 UTC - October 14, 20:00 UTC
  • October 21, 14:00 UTC - October 21, 20:00 UTC
  • October 28, 14:00 UTC - October 28, 20:00 UTC
  • November 4, 14:00 UTC - November 4, 20:00 UTC
  • November 11, 14:00 UTC - November 11, 20:00 UTC
  • November 18, 14:00 UTC - November 18, 20:00 UTC
  • November 25, 14:00 UTC - November 25, 20:00 UTC

Target date

12/1/2022

The motivation for the changes

GitHub Actions maintains the latest two stable versions of any given OS version.

Possible impact

Workflows using the macos-10.15 image label should be updated to macos-latest, macos-11, or macos-12.

Virtual environments affected

  • Ubuntu 18.04
  • Ubuntu 20.04
  • Ubuntu 22.04
  • macOS 10.15
  • macOS 11
  • macOS 12
  • Windows Server 2019
  • Windows Server 2022

Mitigation ways

N/A

@Steve-Glass,

does it mean that macOS-12 will be out of BETA status by then ? #5446
does it mean that macOS-latest will transition to macOS-12 in that period ?

what to do about #4010 ? It was closed and users of virtual box were told to stick on macOS-10.15 with no other alternatives proposed.

@mayeut yes, most likely macOS-12 will be out of beta and macOS-latest will be transitioned to macOS-12.
It looks like macOS-12 doesn't have the issue with VirtualBox, we are going to add it here #5594

@miketimofeev the macOS 10 runners had vagrant installed on them while the macOS 12 runners do not. I'm able to install vagrant via brew on the v12 runners without issue, but brew bundle is unable to pin versions in the same way I could expect a certain version to be pre-installed on the runner. Are there plans to include the vagrant package in the v12 runners like they were on the v10 runners?

@jlosito sure, there are no objections now. I opened a PR here #5854

Added brownouts for ADO

It appears that macOS 10.15 is the only version of the OS that can load the macFUSE kext.

Please see relevant issues: #4731, #598

If you deprecate macOS 10.15 what is your plan for supporting macFUSE related testing?

@billziss-gh thanks for bringing this up! We will revisit macFUSE installation and try to find a solution to install it on the newer macOS versions.

We had just started using Actions and it made our build process and installer creation much easier and convenient for users.

It is unfortunate that Actions only maintains the latest two stable versions of any given OS version. This will make it unusable for us because porting our software suite to new OS versions is a major effort and sometimes not even possible due to various software incompatibilities.

I guess it is back to Jenkins for us!

@ktbolt with Jenkins you would still need to define an agent. Why not just build an agent and still use gha?

@jlosito I was nice to have something that just worked. I don't think self-hosted runners will work for us. Thanks!

@billziss-gh We have the same problem. We're having to drop test coverage for macOS using FUSE because the 10.15 runner is being deprecated.

It would be nice if GitHub provided a way to install kernel extensions in the new macOS runner.

Related:

We can't use osxfuse or macfuse on 11 or 12 which means we can't build or test our code base now. Can we get some work around for this before 8/30/22?

I agree that the concern voiced by @billziss-gh @enocom @JakeSiFive is a real problem for many developers that rely on macFUSE and its testability (incl. our team). Any chance to reconsider this decision until a proper solution has been found, @Steve-Glass @miketimofeev?

Just saw the announcement.

Next time I suggest renaming e.g. using the following pattern: from macos-10.15 to macos-10.15-eol.

It would still "raise awareness" (even more), but at least users which desperately need a given version can still use it for some time if the transition to the newer version would not be straightforwards.

It appears that macOS 10.15 is the only version of the OS that can load the macFUSE kext.

Please see relevant issues: #4731, #598

If you deprecate macOS 10.15 what is your plan for supporting macFUSE related testing?

The situation with macFUSE is no good, it can not be installed in runtime due to apple hardened its security checks in macOS 11.3+.
We also can not add it to the images because macfuse's license has been changed to the non-free one (see osxfuse/osxfuse#616) and we can not install a non-free component.

Our advise on this matter would be to use a self-hosted runner.

Open 👁️‍🗨️

👋 We've been listening to feedback and have decided to postpone the deprecation of macOS 10.15 until 12/1/2022. We will provide an update brownout schedule and will communicate this update via change log as well.

Is the target date actually 9/30/2022?

First post shows 8/30/2022 in two places, but multiple brownout dates are occurring in Sept?

@MSP-Greg the targed date was shifted to December 1st. We will fix the description, thanks!

Please note that as of today, the macos-11 and macos-12 images have a problem with the linker, and some builds fail.

macos-10.15 is the only fully functional image currently available on GitHub.

Until Apple fixes the linker, it would be useful to keep 10.15 available.

@Steve-Glass are these dates still applicable or target dates are changed.

@Steve-Glass : Thanks for this announcement! Please use the YYYY-MM-DD format to avoid date confusions.

The macOS 10.15 Actions runner image ... will be fully unsupported by 12/1/22

GitHub Actions maintains the latest two stable versions of any given OS version.

Do you have macOS 13 hosted runners?

Do you have macOS 13 hosted runners?

github/roadmap#620

The macOS 10.15 runner image has been fully unsupported since 2022-12-01 and will be completely removed by 2023-03-31. We recommend switching to macos-latest , macos-12 , or macos-11.