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

MacOSX13.sdk has disappeared from macos-14 runners

Open jeroen opened this issue 1 year ago • 3 comments

Description

Our CI on macos-14 broke last week because the SDK path to cannot be found. We were using:

SDKROOT=/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk

However this path no longer exists after the latest update:

bash-3.2$ ls -l /Library/Developer/CommandLineTools/SDKs
# lrwxr-xr-x  1 root  wheel   14 Sep 18 21:28 MacOSX.sdk -> MacOSX15.0.sdk
# drwxr-xr-x  7 root  wheel  224 Apr 30 22:16 MacOSX14.5.sdk
# lrwxr-xr-x  1 root  wheel   14 Sep 18 21:28 MacOSX14.sdk -> MacOSX14.5.sdk
# drwxr-xr-x  7 root  wheel  224 Aug 21 15:15 MacOSX15.0.sdk
# lrwxr-xr-x  1 root  wheel   14 Sep 18 21:27 MacOSX15.sdk -> MacOSX15.0.sdk

Also xcodebuild does not be able to find the version:

xcodebuild -showsdks
# DriverKit SDKs:
#        DriverKit 23.5                  -sdk driverkit23.5
#
# iOS SDKs:
#         iOS 17.5                        -sdk iphoneos17.5
# 
# iOS Simulator SDKs:
#         Simulator - iOS 17.5            -sdk iphonesimulator17.5
# 
# macOS SDKs:
#         macOS 14.5                      -sdk macosx14.5
#         macOS 14.5                      -sdk macosx14.5
# 
# tvOS SDKs:
#         tvOS 17.5                       -sdk appletvos17.5
# 
# tvOS Simulator SDKs:
#         Simulator - tvOS 17.5           -sdk appletvsimulator17.5
# 
# visionOS SDKs:
#        visionOS 1.2                    -sdk xros1.2
#
# visionOS Simulator SDKs:
#        Simulator - visionOS 1.2        -sdk xrsimulator1.2
#
# watchOS SDKs:
#        watchOS 10.5                    -sdk watchos10.5
#
# watchOS Simulator SDKs:
#        Simulator - watchOS 10.5        -sdk watchsimulator10.5

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
  • [X] macOS 14
  • [X] macOS 14 Arm64
  • [ ] Windows Server 2019
  • [ ] Windows Server 2022

Image version and build link

Version: 20240918.8

Is it regression?

yes

Expected behavior

Can build with SDK 13

Actual behavior

Fails

Repro steps

SDKROOT=/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk

jeroen avatar Sep 23 '24 11:09 jeroen

Hi @jeroen, I will look into this issue and keep you updated.

sureshe456 avatar Sep 23 '24 12:09 sureshe456

Hi @jeroen, We observed that Xcode CommandLineTools was upgraded to version 16.0.0 instead of 15.3.0 for the macOS 14 runner. Consequently, we do not see MacOSx13.sdk in the /Library/Developer/CommandLineTools/SDKs/ directory for the macOS-14 image.

Please use the code below to set up Xcode version 14.3.1 on the macOS 14 image. This will allow you to find/download MacOSx13.sdk as requested.

name: MacOSX13.sdk disappeared
on:
  workflow_dispatch:
jobs:
  test:
    strategy:
      #fail-fast: false
      matrix:
        os: [ macos-14 ]
        xcode: [ '14.3.1', '15.0.1', '16.0' ]
    runs-on: ${{ matrix.os }}
    steps:
      - uses: maxim-lobanov/setup-xcode@v1
        with:
          xcode-version: ${{ matrix.xcode }}
      - name: show content CLT SDK
        run: |
          cd /Library/Developer/CommandLineTools/SDKs/
          ls
      - name: show content xcode SDK
        run: |
          cd /Applications/Xcode_${{ matrix.xcode }}.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs
          ls
Screenshot 2024-09-27 at 6 33 03 PM

sureshe456 avatar Sep 27 '24 14:09 sureshe456

OK if this is intended, maybe the readme needs to be updated: https://github.com/actions/runner-images/blob/main/images/macos/macos-14-arm64-Readme.md#installed-sdks

jeroen avatar Sep 27 '24 16:09 jeroen

Hi @jeroen ,

To find the macOS 13 SDKs, we need to select the xcode version as 14.3. Please find the code below. Our readme file is in accordance with the below.

steps: 
    - name: Get SDKs
      run: |
           sudo xcode-select -s /Applications/Xcode_14.3.app/Contents/Developer
           xcodebuild -showsdks

Output:
      macOS SDKs:
	macOS 13.3                    	-sdk macosx13.3
	macOS 13.3                    	-sdk macosx13.3

Also FYI as per our announcement we will be removing Xcode 14 and Xcode 16 from our macOS14 runners on Nov 4, 2024.

sarathrajsrinivasan avatar Oct 22 '24 23:10 sarathrajsrinivasan

Closing as not a bug with the description and workaround provided. We install all supported by Xcodes' versions of macOS SDK, the "loss" was related to the Xcode CLT update, components of which we do not control.

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

Thanks for the updates, appreciate it.

jeroen avatar Oct 24 '24 11:10 jeroen