From 1f88fefcce43f985499b25e7144832f7f125b636 Mon Sep 17 00:00:00 2001 From: Itay Brenner Date: Thu, 25 Jun 2026 14:46:26 -0300 Subject: [PATCH 1/2] chore(ci): Move testflight and size-analysis iOS jobs to GitHub Actions macos-26 Replace Cirrus macOS runners with GitHub-hosted macos-26 runners and remove all dead Bitrise-specific steps and matrix strategy. Co-Authored-By: Claude Opus 4.6 (1M context) --- .github/workflows/size-analysis.yml | 43 ++--------------------------- .github/workflows/testflight.yml | 42 ++-------------------------- 2 files changed, 6 insertions(+), 79 deletions(-) diff --git a/.github/workflows/size-analysis.yml b/.github/workflows/size-analysis.yml index bab1e695bd..6ae58204de 100644 --- a/.github/workflows/size-analysis.yml +++ b/.github/workflows/size-analysis.yml @@ -91,15 +91,9 @@ jobs: ios: needs: [ready-to-merge-gate] - name: iOS Size Analysis on ${{matrix.runner_provider}} - runs-on: ${{ matrix.runner_provider == 'bitrise' && fromJSON('["bitrise_pool_name:tahoe"]') || fromJSON('["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:10"]') }} - continue-on-error: ${{ matrix.runner_provider == 'bitrise' }} + name: iOS Size Analysis + runs-on: macos-26 timeout-minutes: 45 - strategy: - fail-fast: false - matrix: - # Only run on Cirrus for now, because we would upload twice to Sentry - runner_provider: ["cirrus"] steps: - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 @@ -114,38 +108,7 @@ jobs: cache: "yarn" cache-dependency-path: yarn.lock - - name: Setup asdf Node.js (Bitrise) - if: matrix.runner_provider == 'bitrise' - run: | - asdf global nodejs system - corepack enable - - - uses: actions/cache@v4 - name: Cache Ruby - if: matrix.runner_provider != 'bitrise' - with: - path: | - ~/.rbenv/versions - ~/.rbenv/cache - key: ruby-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('.ruby-version') }} - - - uses: actions/cache@v4 - name: Cache Ruby (Bitrise) - if: matrix.runner_provider == 'bitrise' - with: - path: ~/.asdf/installs/ruby - key: asdf-ruby-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('.ruby-version') }} - - - name: Install Ruby (Bitrise) - if: matrix.runner_provider == 'bitrise' - working-directory: ${{ env.REACT_NATIVE_SAMPLE_PATH }} - run: | - asdf install ruby 3.3.0 - asdf local ruby 3.3.0 - bundle install - - uses: ruby/setup-ruby@9eb537ca036ebaed86729dcb9309076e4c5c3b74 # v1 - if: matrix.runner_provider != 'bitrise' with: working-directory: ${{ env.REACT_NATIVE_SAMPLE_PATH }} ruby-version: "3.3.0" @@ -208,5 +171,5 @@ jobs: if: ${{ always() }} uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 with: - name: size-analysis-ios-${{ matrix.runner_provider }}-logs + name: size-analysis-ios-logs path: ${{ env.REACT_NATIVE_SAMPLE_PATH }}/ios/xcodebuild-size-analysis.log diff --git a/.github/workflows/testflight.yml b/.github/workflows/testflight.yml index 41033a23d9..a3be4ca78f 100644 --- a/.github/workflows/testflight.yml +++ b/.github/workflows/testflight.yml @@ -13,44 +13,14 @@ jobs: uses: ./.github/workflows/skip-ci.yml upload_to_testflight: - name: Build and Upload React Native Sample to Testflight on ${{matrix.runner_provider}} - runs-on: ${{ matrix.runner_provider == 'bitrise' && fromJSON('["bitrise_pool_name:tahoe"]') || fromJSON('["ghcr.io/cirruslabs/macos-tahoe-xcode:26.2.0", "runner_group_id:10"]') }} - continue-on-error: ${{ matrix.runner_provider == 'bitrise' }} + name: Build and Upload React Native Sample to Testflight + runs-on: macos-26 needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} - strategy: - fail-fast: false - matrix: - # Only run on Cirrus for now, because we would upload twice to Testflight with the same build number - runner_provider: ["cirrus"] steps: - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 - - uses: actions/cache@v4 - name: Cache Ruby - if: matrix.runner_provider != 'bitrise' - with: - path: | - ~/.rbenv/versions - ~/.rbenv/cache - key: ruby-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('.ruby-version') }} - - - uses: actions/cache@v4 - name: Cache Ruby (Bitrise) - if: matrix.runner_provider == 'bitrise' - with: - path: ~/.asdf/installs/ruby - key: asdf-ruby-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('.ruby-version') }} - - - name: Install Ruby (Bitrise) - if: matrix.runner_provider == 'bitrise' - working-directory: samples/react-native - run: | - asdf install ruby 3.3.0 - asdf local ruby 3.3.0 - bundle install - uses: ruby/setup-ruby@9eb537ca036ebaed86729dcb9309076e4c5c3b74 # v1 - if: matrix.runner_provider != 'bitrise' with: working-directory: samples/react-native ruby-version: "3.3.0" # based on what is used in the sample @@ -64,12 +34,6 @@ jobs: cache: "yarn" cache-dependency-path: yarn.lock - - name: Setup asdf Node.js (Bitrise) - if: matrix.runner_provider == 'bitrise' - run: | - asdf global nodejs system - corepack enable - - name: Install Dependencies run: | yarn install @@ -111,6 +75,6 @@ jobs: - name: Upload Xcode Archive uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 with: - name: sentry-react-native-sample-xcode-archive-for-testflight-${{ matrix.runner_provider }} + name: sentry-react-native-sample-xcode-archive-for-testflight path: samples/react-native/sentryreactnativesample.xcarchive retention-days: 1 From 7c5ed838f6dc4d99601ad707ffdf503289272c8d Mon Sep 17 00:00:00 2001 From: Itay Brenner Date: Thu, 25 Jun 2026 15:39:08 -0300 Subject: [PATCH 2/2] chore(ci): Try macos-26-xlarge runners for testflight and size-analysis Co-Authored-By: Claude Opus 4.6 (1M context) --- .github/workflows/size-analysis.yml | 2 +- .github/workflows/testflight.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/size-analysis.yml b/.github/workflows/size-analysis.yml index 6ae58204de..ddb35a3198 100644 --- a/.github/workflows/size-analysis.yml +++ b/.github/workflows/size-analysis.yml @@ -92,7 +92,7 @@ jobs: ios: needs: [ready-to-merge-gate] name: iOS Size Analysis - runs-on: macos-26 + runs-on: macos-26-xlarge timeout-minutes: 45 steps: diff --git a/.github/workflows/testflight.yml b/.github/workflows/testflight.yml index a3be4ca78f..943ae643ac 100644 --- a/.github/workflows/testflight.yml +++ b/.github/workflows/testflight.yml @@ -14,7 +14,7 @@ jobs: upload_to_testflight: name: Build and Upload React Native Sample to Testflight - runs-on: macos-26 + runs-on: macos-26-xlarge needs: [diff_check] if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} steps: