2525
2626jobs :
2727 e2e-tests-ios :
28- runs-on : macos-15
28+ runs-on : macOS-26
2929 env :
3030 OUTPUT_DIR : ~/output
3131 USE_CCACHE : ' 1'
4141 sudo xcode-select -s "/Applications/Xcode_26.2.app/Contents/Developer"
4242 xcodebuild -version
4343
44+ - name : Install xcbeautify
45+ run : brew install xcbeautify
46+
4447 - name : Setup ccache
4548 uses : hendrikmuhs/ccache-action@v1.2
4649 with :
@@ -75,24 +78,23 @@ jobs:
7578
7679 - name : Restore CocoaPods cache
7780 id : pods-cache
78- uses : actions/cache/restore @v5
81+ uses : actions/cache@v5
7982 with :
8083 path : |
8184 example/ios/Pods
8285 ~/.cocoapods/repos
8386 ~/Library/Caches/CocoaPods
8487 packages/react-native-quick-crypto/ios/libsodium-stable
8588 packages/react-native-quick-crypto/deps
86- key : ${{ runner.os }}-pods-${{ github.run_id }}
87- restore-keys : |
88- ${{ runner.os }}-pods-
89+ packages/react-native-quick-crypto/OpenSSL.xcframework
90+ key : ${{ runner.os }}-pods-${{ hashFiles('example/ios/Podfile.lock', 'example/Gemfile.lock') }}
8991
9092 - name : Restore DerivedData cache
9193 id : dd-cache
92- uses : actions/cache/restore @v5
94+ uses : actions/cache@v5
9395 with :
9496 path : ${{ env.DERIVED_DATA_PATH }}
95- key : ${{ runner.os }}-dd-${{ github.run_id }}
97+ key : ${{ runner.os }}-dd-${{ hashFiles('example/ios/Podfile.lock', 'example/Gemfile.lock', 'bun.lock') }}-xcode26.2
9698 restore-keys : |
9799 ${{ runner.os }}-dd-
98100
@@ -102,24 +104,32 @@ jobs:
102104
103105 - name : Install CocoaPods
104106 working-directory : ./example
105- run : bun pods
107+ run : RCT_USE_RN_DEP=1 RCT_USE_PREBUILT_RNCORE=1 bundle exec pod install --project-directory=ios
106108
107109 - name : Build iOS App
108110 working-directory : ./example
109111 run : |
110- echo "Building iOS app with xcodebuild..."
111112 set -o pipefail
112113 xcodebuild \
113114 CC=clang CPLUSPLUS=clang++ LD=clang LDPLUSPLUS=clang++ \
114115 -derivedDataPath ios/build \
116+ -UseModernBuildSystem=YES \
115117 -workspace ios/QuickCryptoExample.xcworkspace \
116118 -scheme QuickCryptoExample \
117119 -sdk iphonesimulator \
118120 -configuration Debug \
119121 -destination "platform=iOS Simulator,name=${{ env.DEVICE_NAME }}" \
122+ -showBuildTimingSummary \
120123 ONLY_ACTIVE_ARCH=YES \
121124 CODE_SIGNING_ALLOWED=NO \
122- build > $HOME/output/ios-build.log 2>&1
125+ build 2>&1 | tee $HOME/output/ios-build.log | xcbeautify --renderer github-actions
126+
127+ - name : Show Build Timing Summary
128+ if : always()
129+ run : |
130+ if [ -f "$HOME/output/ios-build.log" ]; then
131+ sed -n '/Build Timing Summary/,/^\*\* BUILD/p' "$HOME/output/ios-build.log"
132+ fi
123133
124134 - name : Show ccache stats
125135 if : always()
@@ -229,25 +239,6 @@ jobs:
229239 ${{ env.OUTPUT_DIR }}/screenshots/*.png
230240 retention-days : 5
231241
232- - name : Save CocoaPods cache
233- if : always()
234- uses : actions/cache/save@v5
235- with :
236- path : |
237- example/ios/Pods
238- ~/.cocoapods/repos
239- ~/Library/Caches/CocoaPods
240- packages/react-native-quick-crypto/ios/libsodium-stable
241- packages/react-native-quick-crypto/deps
242- key : ${{ runner.os }}-pods-${{ github.run_id }}
243-
244- - name : Save DerivedData cache
245- if : always()
246- uses : actions/cache/save@v5
247- with :
248- path : ${{ env.DERIVED_DATA_PATH }}
249- key : ${{ runner.os }}-dd-${{ github.run_id }}
250-
251242 - name : Exit with Test Result
252243 if : always()
253244 run : |
0 commit comments