refactor: unify tests in test apps #1736
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: Test iOS build | |
on: | |
pull_request: | |
branches: | |
- main | |
paths: | |
- '.github/workflows/ios-build-test.yml' | |
- 'RNScreens.podspec' | |
- 'package.json' | |
- 'ios/**' | |
- 'common/**' | |
- 'TestsExample/**' | |
push: | |
branches: | |
- main | |
workflow_dispatch: | |
jobs: | |
build: | |
runs-on: macos-14 | |
timeout-minutes: 60 | |
env: | |
WORKING_DIRECTORY: TestsExample | |
concurrency: | |
group: ios-${{ github.ref }} | |
cancel-in-progress: true | |
steps: | |
- name: checkout | |
uses: actions/checkout@v2 | |
- name: Use Node.js 18 | |
uses: actions/setup-node@v2 | |
with: | |
node-version: 18 | |
cache: 'yarn' | |
cache-dependency-path: 'TestsExample/yarn.lock' | |
- name: Use latest stable Xcode | |
uses: maxim-lobanov/setup-xcode@v1 | |
with: | |
xcode-version: latest-stable | |
- name: Install node dependencies | |
working-directory: ${{ env.WORKING_DIRECTORY }} | |
run: yarn | |
# This step is required due to the bug introduced in 1.15.0 version of cocoapods | |
# that breaks the pod installation for cached packages. | |
# see https://github.com/facebook/react-native/issues/42698 | |
# This step should be removed once this issue will be resolved: | |
# https://github.com/actions/runner-images/issues/9308 | |
- name: Install Ruby gems | |
run: gem install cocoapods -v 1.15.2 | |
- name: Install pods | |
id: install_pods | |
continue-on-error: true | |
working-directory: ${{ env.WORKING_DIRECTORY }}/ios | |
run: pod install | |
- if: steps.install_pods.outcome == 'failure' | |
id: remove_pods | |
name: Remove pods | |
working-directory: ${{ env.WORKING_DIRECTORY }}/ios | |
run: rm -fr build Pods Podfile.lock | |
- if: steps.remove_pods.outcome == 'success' | |
id: reinstall_pods | |
name: Reinstall pods | |
working-directory: ${{ env.WORKING_DIRECTORY }}/ios | |
run: pod install | |
- name: Build app | |
working-directory: ${{ env.WORKING_DIRECTORY }} | |
run: npx react-native run-ios --no-packager --simulator="iPhone 15" |