Skip to content

Commit 3789e86

Browse files
committed
perf(ci): optimize platform coverage to reduce build times
- Remove Xcode 15.2 testing (keep only 15.4 for backward compatibility) - Remove tvOS, visionOS, and watchOS platforms (less critical for backend SDK) - Keep iOS, macOS, and macCatalyst for comprehensive coverage - Maintain Linux and Android cross-platform testing - Expected 50-60% reduction in CI time while maintaining good coverage This optimization focuses on the most commonly used platforms while significantly reducing CI resource usage and wait times.
1 parent 543d08f commit 3789e86

File tree

1 file changed

+6
-20
lines changed

1 file changed

+6
-20
lines changed

.github/workflows/ci.yml

Lines changed: 6 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ permissions:
1818

1919
jobs:
2020
xcodebuild-latest:
21-
name: xcodebuild (16)
21+
name: xcodebuild (16.3)
2222
runs-on: macos-15
2323
strategy:
2424
matrix:
@@ -42,7 +42,7 @@ jobs:
4242
- name: Release
4343
if: matrix.skip_release != '1'
4444
run: make XCODEBUILD_ARGUMENT="${{ matrix.command }}" CONFIG=Release PLATFORM="${{ matrix.platform }}" xcodebuild
45-
- name: Instal lcov
45+
- name: Install lcov
4646
if: matrix.command == 'test' && matrix.platform == 'IOS'
4747
run: brew install lcov
4848
- name: Export code coverage
@@ -55,34 +55,20 @@ jobs:
5555
github-token: ${{ secrets.GITHUB_TOKEN }}
5656
file: lcov.info
5757

58-
xcodebuild:
59-
name: xcodebuild (15)
58+
xcodebuild-legacy:
59+
name: xcodebuild (15.4)
6060
runs-on: macos-14
6161
strategy:
6262
matrix:
6363
command: [test, ""]
64-
platform: [IOS, MAC_CATALYST, MACOS, TVOS, VISIONOS, WATCHOS]
65-
xcode: [15.2, 15.4]
66-
exclude:
67-
- { xcode: 15.2, command: test }
68-
- { xcode: 15.2, platform: MAC_CATALYST }
69-
- { xcode: 15.2, platform: TVOS }
70-
#- { xcode: 15.2, platform: VISIONOS }
71-
- { xcode: 15.2, platform: WATCHOS }
72-
- { command: test, platform: WATCHOS }
64+
platform: [IOS, MACOS, MAC_CATALYST]
65+
xcode: ["15.4"]
7366
include:
7467
- { command: test, skip_release: 1 }
7568
steps:
7669
- uses: actions/checkout@v4
7770
- name: Select Xcode ${{ matrix.xcode }}
7871
run: sudo xcode-select -s /Applications/Xcode_${{ matrix.xcode }}.app
79-
- name: Install visionOS runtime
80-
if: matrix.platform == 'visionOS'
81-
run: |
82-
sudo xcodebuild -runFirstLaunch
83-
sudo xcrun simctl list
84-
sudo xcodebuild -downloadPlatform visionOS
85-
sudo xcodebuild -runFirstLaunch
8672
- name: List available devices
8773
run: xcrun simctl list devices available
8874
- name: Cache derived data

0 commit comments

Comments
 (0)