chore(react-native-example): upgrade example app & fix detox tests #519
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: ci-detox-ios | |
on: | |
pull_request: | |
branches: | |
- master | |
jobs: | |
libraries: | |
name: Build Wrapper Libraries | |
runs-on: macos-14 | |
defaults: | |
run: | |
working-directory: ./wrappers/react-native | |
steps: | |
- name: Checkout | |
uses: actions/checkout@83b7061638ee4956cf7545a6f7efe594e5ad0247 # [email protected] | |
- name: Setup rust toolchain | |
uses: actions-rs/toolchain@b2417cde72dcf67f306c0ae8e0828a81bf0b189f # [email protected] | |
with: | |
profile: minimal | |
toolchain: 1.70.0 | |
override: true | |
- name: Xcode version | |
run: xcodebuild -version | |
- name: List Installed Xcode Versions | |
run: ls /Applications | grep Xcode | |
# Try without pinning xocode | |
# - name: Set Xcode Version | |
# run: sudo xcode-select -s /Applications/Xcode_16.app/Contents/Developer | |
- name: Verify Xcode Version | |
run: xcodebuild -version | |
- name: Build Libraries for iOS | |
run: yarn build:ios | |
- name: Archive build artifacts | |
if: success() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: ci-detox-ios-artifacts-libs-${{ github.sha }} | |
path: wrappers/react-native/ios/lib | |
retention-days: 1 | |
ios: | |
name: Detox iOS E2E Testing | |
needs: [libraries] | |
runs-on: macos-14 | |
timeout-minutes: 120 | |
defaults: | |
run: | |
working-directory: wrappers/react-native | |
shell: zsh -il {0} # load ~/.zshrc | |
env: | |
# DEVELOPER_DIR: /Applications/Xcode_16.app/Contents/Developer | |
NODE_OPTIONS: "--max-old-space-size=5120" | |
# Do not launch packager during CI build | |
RCT_NO_LAUNCH_PACKAGER: "true" | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Setup Node | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18.x | |
registry-url: https://registry.npmjs.org | |
- name: Download iOS Libraries | |
uses: actions/download-artifact@v3 | |
with: | |
name: ci-detox-ios-artifacts-libs-${{ github.sha }} | |
path: wrappers/react-native/ios/lib | |
#- name: Set Xcode Version | |
# run: sudo xcode-select -s /Applications/Xcode_16.app/Contents/Developer | |
- name: Inspect iOS Libraries | |
run: ls -R ios/lib | |
- name: Install Dependencies | |
run: yarn install --frozen-lockfile | |
- name: Example App Install Dependencies | |
run: yarn example --frozen-lockfile | |
- name: Example App Install Pods | |
run: yarn example pods | |
- run: brew tap wix/brew | |
- run: brew install applesimutils | |
- name: Print Simulators | |
run: applesimutils --list | |
- name: Install iPhone 11 Simulator | |
run: | | |
xcrun simctl create "iPhone 11" com.apple.CoreSimulator.SimDeviceType.iPhone-11 com.apple.CoreSimulator.SimRuntime.iOS-17-0 | |
- name: Detox Build iOS Configuration | |
run: yarn detox:build:ios | |
- name: Detox E2E Test | |
run: yarn detox:ios:ci | |
- name: Archive detox failed test results | |
if: failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: detox-artifacts-${{ github.sha }} | |
path: wrappers/react-native/example/detox-artifacts | |
retention-days: 1 |