Change React Native Version import to the one from Platform #4239
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: Native Tests | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
jobs: | |
diff_check: | |
uses: ./.github/workflows/skip-ci.yml | |
cancel-previous-workflow: | |
runs-on: ubuntu-latest | |
needs: [diff_check] | |
if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} | |
steps: | |
- name: Cancel Previous Runs | |
uses: styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa # pin@0.12.1 | |
with: | |
access_token: ${{ github.token }} | |
test-ios: | |
name: ios | |
runs-on: macos-14 # uses m1 https://github.blog/changelog/2024-01-30-github-actions-macos-14-sonoma-is-now-available/ | |
needs: [diff_check] | |
if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: NPM cache | |
uses: actions/cache@v4 | |
id: deps-cache | |
with: | |
path: node_modules | |
key: ${{ github.workflow }}-${{ github.job }}-npm-${{ hashFiles('yarn.lock') }} | |
- name: Install SDK JS Dependencies | |
if: steps.deps-cache.outputs['cache-hit'] != 'true' | |
run: yarn install | |
- name: Install App Pods | |
working-directory: RNSentryCocoaTester | |
run: pod install | |
- name: Run iOS Tests | |
working-directory: RNSentryCocoaTester | |
env: | |
SCHEME: RNSentryCocoaTester | |
CONFIGURATION: Release | |
DESTINATION: 'platform=iOS Simulator,OS=latest,name=iPhone 14' | |
run: | | |
env NSUnbufferedIO=YES \ | |
xcodebuild -workspace *.xcworkspace \ | |
-scheme $SCHEME -configuration $CONFIGURATION \ | |
-destination "$DESTINATION" \ | |
test | |
test-android: | |
name: android | |
runs-on: ubuntu-latest | |
needs: [diff_check] | |
if: ${{ needs.diff_check.outputs.skip_ci != 'true' }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-java@v4 | |
with: | |
java-version: '17' | |
distribution: 'adopt' | |
- name: Gradle cache | |
uses: gradle/gradle-build-action@v3 | |
- name: Run unit tests | |
working-directory: RNSentryAndroidTester | |
run: ./gradlew testDebugUnitTest | |
- name: Setup KVM | |
shell: bash | |
run: | | |
# check if virtualization is supported... | |
sudo apt install -y --no-install-recommends cpu-checker coreutils && echo "CPUs=$(nproc --all)" && kvm-ok | |
# allow access to KVM to run the emulator | |
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' \ | |
| sudo tee /etc/udev/rules.d/99-kvm4all.rules | |
sudo udevadm control --reload-rules | |
sudo udevadm trigger --name-match=kvm | |
- name: AVD cache | |
uses: actions/cache@v4 | |
id: avd-cache | |
with: | |
path: | | |
~/.android/avd/* | |
~/.android/adb* | |
key: avd-aosp-atd-30 | |
- name: Create AVD and generate snapshot for caching | |
if: steps.avd-cache.outputs.cache-hit != 'true' | |
uses: reactivecircus/android-emulator-runner@77986be26589807b8ebab3fde7bbf5c60dabec32 #pin@v2.31.0 | |
with: | |
api-level: 30 | |
force-avd-creation: false | |
disable-animations: true | |
disable-spellchecker: true | |
target: 'aosp_atd' | |
channel: canary # Necessary for ATDs | |
emulator-options: > | |
-no-window | |
-no-snapshot-save | |
-gpu swiftshader_indirect | |
-noaudio | |
-no-boot-anim | |
-camera-back none | |
-camera-front none | |
-timezone US/Pacific | |
script: echo "Generated AVD snapshot for caching." | |
- name: Run connected tests | |
uses: reactivecircus/android-emulator-runner@77986be26589807b8ebab3fde7bbf5c60dabec32 #pin@v2.31.0 | |
with: | |
working-directory: RNSentryAndroidTester | |
api-level: 30 | |
force-avd-creation: false | |
disable-animations: true | |
disable-spellchecker: true | |
target: 'aosp_atd' | |
channel: canary # Necessary for ATDs | |
emulator-options: > | |
-no-window | |
-no-snapshot-save | |
-gpu swiftshader_indirect | |
-noaudio | |
-no-boot-anim | |
-camera-back none | |
-camera-front none | |
-timezone US/Pacific | |
script: | | |
./gradlew uninstallDebug uninstallDebugAndroidTest | |
./gradlew connectedCheck |