From addef08637e46392236e2c8a3dbdd9f5f88200e2 Mon Sep 17 00:00:00 2001 From: Yibo Zhuang Date: Mon, 21 Sep 2026 11:49:12 -0700 Subject: [PATCH] Merge pull request #378 from yzhuang-oai/dev/yzhuang/xcode-27-images Add Xcode 27 to Tahoe images --- .github/workflows/monthly.yml | 6 +++++- .github/workflows/release.yml | 4 ++-- .github/workflows/template-validation.yml | 11 ++++++++++- data/expected.tahoe.runtimes.txt | 4 ++++ 4 files changed, 21 insertions(+), 4 deletions(-) diff --git a/.github/workflows/monthly.yml b/.github/workflows/monthly.yml index 1b8ae1c..5881863 100644 --- a/.github/workflows/monthly.yml +++ b/.github/workflows/monthly.yml @@ -115,9 +115,13 @@ jobs: matrix: include: - macos_version: tahoe - xcode_version: "26.2" + xcode_version: "27" xcode_components: '"MetalToolchain"' latest: true + - macos_version: tahoe + xcode_version: "26.2" + xcode_components: '"MetalToolchain"' + latest: false - macos_version: tahoe xcode_version: "26.1.1" xcode_components: '"MetalToolchain"' diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2e45ab2..7588801 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -34,7 +34,7 @@ jobs: fail-fast: false max-parallel: 1 matrix: - # Xcode 27 requires macOS Tahoe 26.4 or later. + # Xcode 27 requires macOS Tahoe 26.6 or later. macos_version: >- ${{ startsWith(github.event.release.tag_name || inputs.xcode_version, '27') && fromJSON('["tahoe"]') @@ -107,7 +107,7 @@ jobs: xcode_components: '"MetalToolchain"' disk_size: 380 - macos_version: tahoe - xcode_versions: '"26.6","27-beta-6","26.5","27-beta","26.4.1","26.3","26.2","26.1.1","26.0.1"' + xcode_versions: '"27","26.6","27-beta-6","26.5","27-beta","26.4.1","26.3","26.2","26.1.1","26.0.1"' additional_ios_builds: "18.6" additional_tvos_builds: "" xcode_components: '"MetalToolchain"' diff --git a/.github/workflows/template-validation.yml b/.github/workflows/template-validation.yml index 95de25b..aca297a 100644 --- a/.github/workflows/template-validation.yml +++ b/.github/workflows/template-validation.yml @@ -61,6 +61,7 @@ jobs: mkdir -p "$HOME/XcodesCache" touch "$HOME/XcodesCache/Xcode_26.6.xip" touch "$HOME/XcodesCache/Xcode_27-beta-6.xip" + touch "$HOME/XcodesCache/Xcode_27.xip" - name: Validate templates run: | @@ -106,6 +107,11 @@ jobs: -var 'xcode_version=["27-beta-6"]' \ -var 'xcode_components=["MetalToolchain"]' + validate templates/xcode.pkr.hcl \ + -var macos_version=tahoe \ + -var 'xcode_version=["27"]' \ + -var 'xcode_components=["MetalToolchain"]' + build-vanilla: name: Build Vanilla Image (${{ matrix.macos_version }}) needs: packer-validate @@ -252,7 +258,7 @@ jobs: matrix: include: - macos_version: tahoe - xcode_versions: '"26.6","27-beta-6","26.5","27-beta","26.4.1","26.3","26.2","26.1.1","26.0.1"' + xcode_versions: '"27","26.6","27-beta-6","26.5","27-beta","26.4.1","26.3","26.2","26.1.1","26.0.1"' additional_ios_builds: "18.6" additional_tvos_builds: "" xcode_components: '"MetalToolchain"' @@ -348,6 +354,9 @@ jobs: candidate="" case "$version" in + 27) + candidate="$HOME/XcodesCache/Xcode_27.0.xip" + ;; 27-beta-6) candidate="$HOME/XcodesCache/Xcode_27_beta_6.xip" ;; diff --git a/data/expected.tahoe.runtimes.txt b/data/expected.tahoe.runtimes.txt index 6a4ee1e..b2ca55b 100644 --- a/data/expected.tahoe.runtimes.txt +++ b/data/expected.tahoe.runtimes.txt @@ -5,11 +5,15 @@ iOS 26.1 (26.1 - 23B86) - com.apple.CoreSimulator.SimRuntime.iOS-26-1 iOS 26.3 (26.3.1 - 23D8133) - com.apple.CoreSimulator.SimRuntime.iOS-26-3 iOS 26.4 (26.4.1 - 23E254a) - com.apple.CoreSimulator.SimRuntime.iOS-26-4 iOS 26.5 (26.5 - 23F77) - com.apple.CoreSimulator.SimRuntime.iOS-26-5 +iOS 27.0 (27.0 - 24A434) - com.apple.CoreSimulator.SimRuntime.iOS-27-0 iOS 27.0 (27.0 - 24A5355p) - com.apple.CoreSimulator.SimRuntime.iOS-27-0 iOS 27.0 (27.0 - 24A5423a) - com.apple.CoreSimulator.SimRuntime.iOS-27-0 tvOS 26.5 (26.5 - 23L470) - com.apple.CoreSimulator.SimRuntime.tvOS-26-5 +tvOS 27.0 (27.0 - 24J360) - com.apple.CoreSimulator.SimRuntime.tvOS-27-0 tvOS 27.0 (27.0 - 24J5356a) - com.apple.CoreSimulator.SimRuntime.tvOS-27-0 watchOS 26.5 (26.5 - 23T570) - com.apple.CoreSimulator.SimRuntime.watchOS-26-5 +watchOS 27.0 (27.0 - 24R362) - com.apple.CoreSimulator.SimRuntime.watchOS-27-0 watchOS 27.0 (27.0 - 24R5355a) - com.apple.CoreSimulator.SimRuntime.watchOS-27-0 visionOS 26.5 (26.5 - 23O470) - com.apple.CoreSimulator.SimRuntime.xrOS-26-5 +visionOS 27.0 (27.0 - 24M362) - com.apple.CoreSimulator.SimRuntime.xrOS-27-0 visionOS 27.0 (27.0 - 24M5357a) - com.apple.CoreSimulator.SimRuntime.xrOS-27-0