From 2b5361eddae3b2e560d92c0ccb11b73883c667b7 Mon Sep 17 00:00:00 2001 From: Vit Horacek Date: Wed, 28 Jan 2026 12:59:22 -0800 Subject: [PATCH 1/2] [No QA] Update Xcode version to 26.2 in Rock iOS build workflows GitHub Actions runner images were updated on January 26th, making Xcode 26.2 the new default. The iOS 26.0 simulator is no longer properly available with Xcode 26.0.1, causing Rock remote iOS builds to fail with: "iOS 26.0 is not installed. Please download and install the platform" This updates the DEVELOPER_DIR to use Xcode 26.2 which has working iOS 26.2 simulators on the latest macos-15 runner images. --- .github/workflows/remote-build-ios.yml | 2 +- .github/workflows/testBuild.yml | 2 +- .github/workflows/verifyHybridApp.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/remote-build-ios.yml b/.github/workflows/remote-build-ios.yml index 4a352e69334c..1e93555479e3 100644 --- a/.github/workflows/remote-build-ios.yml +++ b/.github/workflows/remote-build-ios.yml @@ -20,7 +20,7 @@ jobs: build: runs-on: ${{ github.repository_owner == 'Expensify' && 'macos-15-xlarge' || 'macos-15' }} env: - DEVELOPER_DIR: /Applications/Xcode_26.0.app/Contents/Developer + DEVELOPER_DIR: /Applications/Xcode_26.2.app/Contents/Developer strategy: fail-fast: false matrix: diff --git a/.github/workflows/testBuild.yml b/.github/workflows/testBuild.yml index e189817609e9..4ffd516d4927 100644 --- a/.github/workflows/testBuild.yml +++ b/.github/workflows/testBuild.yml @@ -330,7 +330,7 @@ jobs: if: ${{ inputs.IOS }} needs: [prep, getMobileExpensifyPR, getMobileExpensifyRef] env: - DEVELOPER_DIR: /Applications/Xcode_26.0.app/Contents/Developer + DEVELOPER_DIR: /Applications/Xcode_26.2.app/Contents/Developer PULL_REQUEST_NUMBER: ${{ needs.prep.outputs.APP_PR_NUMBER }} runs-on: macos-15-xlarge outputs: diff --git a/.github/workflows/verifyHybridApp.yml b/.github/workflows/verifyHybridApp.yml index 09fb79f8f6d6..697b75f3cf2a 100644 --- a/.github/workflows/verifyHybridApp.yml +++ b/.github/workflows/verifyHybridApp.yml @@ -113,7 +113,7 @@ jobs: name: Verify iOS HybridApp builds on main runs-on: macos-15-xlarge env: - DEVELOPER_DIR: /Applications/Xcode_26.0.app/Contents/Developer + DEVELOPER_DIR: /Applications/Xcode_26.2.app/Contents/Developer # Only run on pull requests that are *not* on a fork if: ${{ !github.event.pull_request.head.repo.fork && github.event_name == 'pull_request' }} steps: From be10e27447da63eb65cbe27a6eb757cb6c002f2d Mon Sep 17 00:00:00 2001 From: Vit Horacek Date: Wed, 28 Jan 2026 13:00:30 -0800 Subject: [PATCH 2/2] Also update Xcode version in deploy.yml The staging deploy was also failing with the same iOS 26.0 simulator error, confirming that Fastlane also uses DEVELOPER_DIR and needs the same fix. --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 5a7ba62179b8..ceea37b2dc73 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -298,7 +298,7 @@ jobs: needs: prep runs-on: macos-15-xlarge env: - DEVELOPER_DIR: /Applications/Xcode_26.0.app/Contents/Developer + DEVELOPER_DIR: /Applications/Xcode_26.2.app/Contents/Developer SHOULD_BUILD_APP: ${{ github.ref == 'refs/heads/staging' || fromJSON(needs.prep.outputs.IS_CHERRY_PICK) }} steps: - name: Checkout