Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
5e7e4a1
chore: add blank app fixture runner and appium tests
descorp Jan 12, 2026
843d90c
chore: correct typo
descorp Jan 12, 2026
0c870bf
chore: add fixes
descorp Jan 12, 2026
a6da3ae
chore: correct title
descorp Jan 12, 2026
6f32c5b
chore: applying fixes
descorp Jan 12, 2026
4c813a6
chore: add missing IDs
descorp Jan 12, 2026
88d1b87
chore: add proper Android runner
descorp Jan 12, 2026
0fce238
chore: add permisions
descorp Jan 12, 2026
ec936f7
chore: fix github bug
descorp Jan 12, 2026
c5c7730
chore: change ENV to output
descorp Jan 12, 2026
0d8fe95
fix: script by touching yarn.lock
descorp Jan 12, 2026
979cc44
chore: fix appium version
descorp Jan 12, 2026
0754f1b
chore: fix sed command
descorp Jan 13, 2026
931225f
chore: fix pathes
descorp Jan 13, 2026
d264646
chore: improving native scripts
descorp Jan 13, 2026
d99eb47
choer: lint Appium tests source
descorp Jan 13, 2026
ade5037
chore: checking dependenciess
descorp Jan 13, 2026
ee9e250
chore: point to iso simulator
descorp Jan 13, 2026
c310fe7
chore: improve appium tests
descorp Jan 13, 2026
a3651fe
chore: reuse Android emulator
descorp Jan 13, 2026
af3d5a4
chore: improving android + more logs
descorp Jan 13, 2026
6774a44
chore: solving slow iOS issue
descorp Jan 13, 2026
779fc06
temp: validating..
descorp Jan 13, 2026
3b3bcac
Merge branch 'develop' into ci-blank-tests
descorp Jan 13, 2026
ff8ac63
chore: remove auto run on CI
descorp Jan 13, 2026
930feb6
Merge branch 'develop' into ci-blank-tests
descorp Jan 19, 2026
4743103
chore: remove duplicated code
descorp Jan 21, 2026
ee86444
chore: simplify scripts
descorp Jan 21, 2026
1d614ff
chore: prevent checkout on platform run
descorp Jan 21, 2026
74ec150
chore: reuse android setup as an action
descorp Jan 21, 2026
789a927
change: improve appium runner structure
descorp Jan 22, 2026
265111c
chore: ignore e2e on tests
descorp Jan 22, 2026
737e03f
fix: unnececery param
descorp Jan 22, 2026
02a447f
chore: fix missing MainActivity
descorp Jan 22, 2026
5b479c5
chore: remove unnececery || true checks
descorp Jan 22, 2026
b0120b7
temp: validate expo..
descorp Jan 22, 2026
9470e7a
Merge branch 'develop' into ci-blank-tests
descorp Feb 11, 2026
13835ec
chore: update setup script to handle Expo platform
descorp Feb 11, 2026
8bf9ae7
chore: apply expo plugin and secrets
descorp Feb 12, 2026
175f0b7
chore: revert hiding ios header
descorp Feb 12, 2026
120c6bf
chore: add xcpretty
descorp Feb 12, 2026
028223b
chore: correct scheme for expo
descorp Feb 12, 2026
ee9b1d4
chore: fix podspec
descorp Feb 12, 2026
147ab6b
chore: rework pipeline so it is triggered on demand
descorp Feb 12, 2026
260f1d1
Merge branch 'develop' into ci-blank-tests
descorp Feb 12, 2026
1a4c485
chore: make unique artifacts
descorp Feb 18, 2026
0ca83cf
chore: use custom ios simulator script
descorp Feb 19, 2026
1ac2f57
chore: add xcode logs
descorp Feb 19, 2026
2252601
Merge branch 'develop' into ci-blank-tests
descorp Feb 19, 2026
eae0e23
chore: correct bundle ID for Expo and React
descorp Feb 19, 2026
e93d936
chore: add swiftlint
descorp Feb 19, 2026
5ab365a
chore: cleanup
descorp Feb 20, 2026
d26cf77
chore: reuse build_lib
descorp Feb 20, 2026
4009fe0
fix: add checkout step to android e2e test job
descorp Feb 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
73 changes: 73 additions & 0 deletions .github/actions/setup-android-emulator/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
name: 'Setup Android Emulator'
description: 'Setup Android emulator environment with caching'

inputs:
node-version:
description: 'Node.js version'
required: true
android-api-level:
description: 'Android API level'
required: true
java-version:
description: 'Java version'
default: '17'

outputs:
avd-cache-hit:
description: 'Whether AVD cache was hit'
value: ${{ steps.avd-cache.outputs.cache-hit }}

runs:
using: 'composite'
steps:
- name: Provide more disk space
shell: bash
run: |
sudo rm -rf /opt/hostedtoolcache
sudo rm -rf /usr/share/dotnet
sudo rm -rf /opt/ghc /opt/cabal /opt/stack
sudo rm -rf /usr/local/.ghcup
sudo rm -rf "/usr/local/share/boost"
sudo apt-get remove -y 'php.*'
sudo docker image prune --all --force

- name: Enable KVM
shell: bash
run: |
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: Setup Java
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: ${{ inputs.java-version }}

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ inputs.node-version }}

- name: Gradle cache
uses: gradle/actions/setup-gradle@v5

- name: AVD cache
uses: actions/cache@v5
id: avd-cache
with:
path: |
~/.android/avd/*
~/.android/adb*
key: avd-${{ inputs.android-api-level }}

- name: Create AVD and generate snapshot for caching
if: steps.avd-cache.outputs.cache-hit != 'true'
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: ${{ inputs.android-api-level }}
target: google_apis
arch: x86_64
force-avd-creation: false
emulator-boot-timeout: 300
script: echo "Generated AVD snapshot for caching."
68 changes: 3 additions & 65 deletions .github/workflows/android_tests.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
name: Test Android
permissions:
contents: read
actions: write

on:
workflow_call:
Expand All @@ -21,34 +20,8 @@ jobs:
target: google_apis
arch: x86_64
steps:
- name: Provide more disk space
run: |
sudo rm -rf /opt/hostedtoolcache
sudo rm -rf /usr/share/dotnet
sudo rm -rf /opt/ghc /opt/cabal /opt/stack
sudo rm -rf /usr/local/.ghcup
sudo rm -rf "/usr/local/share/boost"
sudo apt-get remove -y 'php.*'
sudo docker image prune --all --force

- uses: actions/checkout@v6

- name: Enable KVM
run: |
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

- uses: actions/setup-java@v5
with:
distribution: 'zulu'
java-version: '17'

- uses: actions/setup-node@v6
with:
node-version: ${{ inputs.node-version }}
cache: 'yarn'

- name: Download library
uses: actions/download-artifact@v7
with:
Expand All @@ -59,45 +32,10 @@ jobs:
run: |
yarn install --frozen-lockfile

- name: Gradle cache
uses: gradle/actions/setup-gradle@v5

- name: AVD cache
uses: actions/cache@v5
id: avd-cache
with:
path: |
~/.android/avd/*
~/.android/adb*
key: avd-${{ inputs.android-version }}

- name: Create AVD and generate snapshot for caching
if: steps.avd-cache.outputs.cache-hit != 'true'
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: ${{ inputs.android-version }}
target: ${{ env.target }}
arch: ${{ env.arch }}
force-avd-creation: false
emulator-boot-timeout: 300
script: echo "Generated AVD snapshot for caching."

- name: Run tests
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: ${{ inputs.android-version }}
target: ${{ env.target }}
arch: ${{ env.arch }}
force-avd-creation: false
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
working-directory: ./example/android
script: |
echo "::group::Running Android app"
yarn android
echo "::endgroup::"
echo "::group::Running Tests"
./gradlew jacocoTestReport
echo "::endgroup::"
working-directory: ./example/android
run: |
./gradlew jacocoTestReport

- name: Prepare Jacoco report
run: |
Expand Down
22 changes: 21 additions & 1 deletion .github/workflows/build_lib.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,19 @@
name: Build library
permissions:
contents: read
actions: write

on:
workflow_call:
inputs:
node-version:
required: true
type: string
build-tgz:
type: boolean
default: true
build-precompiled-sdk:
type: boolean
default: true

jobs:
build-lib:
Expand Down Expand Up @@ -37,7 +42,22 @@ jobs:
path: reports
retention-days: 1

- name: Create tgz
if: inputs.build-tgz
run: |
npm pack
mv adyen-react-native-*.tgz adyen-react-native.tgz

- name: Archive tgz
if: inputs.build-tgz
uses: actions/upload-artifact@v6
with:
name: built-tgz
path: adyen-react-native.tgz
retention-days: 1

- name: Archive precompiled SDK
if: inputs.build-precompiled-sdk
uses: actions/upload-artifact@v6
with:
name: built-lib
Expand Down
Loading
Loading