From b4b4c58ddb08b5e50b67829ad54c36b99a404df7 Mon Sep 17 00:00:00 2001 From: Marcin Szalski Date: Wed, 13 May 2026 16:57:46 +0200 Subject: [PATCH 1/2] chore(ci): optimize ci only to be invoked on path changes --- .github/workflows/ci.yml | 78 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 74 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 95e3bb7e..a86ad282 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,9 +11,43 @@ concurrency: cancel-in-progress: true jobs: + filter: + name: Detect changed paths + runs-on: ubuntu-latest + outputs: + packages: ${{ steps.filter.outputs.packages }} + rnapp: ${{ steps.filter.outputs.rnapp }} + expo54: ${{ steps.filter.outputs.expo54 }} + expo55: ${{ steps.filter.outputs.expo55 }} + androidapp: ${{ steps.filter.outputs.androidapp }} + appleapp: ${{ steps.filter.outputs.appleapp }} + steps: + - name: Checkout + uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6 + + - name: Filter paths + uses: dorny/paths-filter@v3 + id: filter + with: + filters: | + packages: + - 'packages/**' + rnapp: + - 'apps/RNApp/**' + expo54: + - 'apps/ExpoApp54/**' + expo55: + - 'apps/ExpoApp55/**' + androidapp: + - 'apps/AndroidApp/**' + appleapp: + - 'apps/AppleApp/**' + check-changeset: name: Check changeset runs-on: ubuntu-latest + needs: filter + if: needs.filter.outputs.packages == 'true' steps: - name: Checkout repository uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6 @@ -30,6 +64,8 @@ jobs: build-lint: name: Build, lint, typecheck & Jest runs-on: ubuntu-latest + needs: filter + if: needs.filter.outputs.packages == 'true' steps: - name: Checkout uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6 @@ -56,7 +92,16 @@ jobs: android-androidapp-expo: name: Android road test (RNApp & AndroidApp - Expo ${{ matrix.version }}) runs-on: ubuntu-latest - needs: build-lint + needs: [filter, build-lint] + if: | + always() && + ( + needs.filter.outputs.expo54 == 'true' || + needs.filter.outputs.expo55 == 'true' || + needs.filter.outputs.androidapp == 'true' || + needs.filter.outputs.packages == 'true' + ) && + (needs.build-lint.result == 'success' || needs.build-lint.result == 'skipped') strategy: matrix: include: @@ -77,7 +122,15 @@ jobs: android-androidapp-vanilla: name: Android road test (RNApp & AndroidApp - Vanilla) runs-on: ubuntu-latest - needs: build-lint + needs: [filter, build-lint] + if: | + always() && + ( + needs.filter.outputs.rnapp == 'true' || + needs.filter.outputs.androidapp == 'true' || + needs.filter.outputs.packages == 'true' + ) && + (needs.build-lint.result == 'success' || needs.build-lint.result == 'skipped') steps: - name: Checkout @@ -93,7 +146,15 @@ jobs: ios-appleapp-vanilla: name: iOS road test (RNApp & AppleApp - Vanilla) runs-on: macos-26 - needs: build-lint + needs: [filter, build-lint] + if: | + always() && + ( + needs.filter.outputs.rnapp == 'true' || + needs.filter.outputs.appleapp == 'true' || + needs.filter.outputs.packages == 'true' + ) && + (needs.build-lint.result == 'success' || needs.build-lint.result == 'skipped') steps: - name: Checkout @@ -108,7 +169,16 @@ jobs: ios-appleapp-expo: name: iOS road test (RNApp & AppleApp - Expo ${{ matrix.version }}) runs-on: macos-26 - needs: build-lint + needs: [filter, build-lint] + if: | + always() && + ( + needs.filter.outputs.expo54 == 'true' || + needs.filter.outputs.expo55 == 'true' || + needs.filter.outputs.appleapp == 'true' || + needs.filter.outputs.packages == 'true' + ) && + (needs.build-lint.result == 'success' || needs.build-lint.result == 'skipped') strategy: matrix: include: From adb48e5335a88283d5df57b7a7576e0de7a5dfcf Mon Sep 17 00:00:00 2001 From: Marcin Szalski Date: Wed, 13 May 2026 18:07:46 +0200 Subject: [PATCH 2/2] chore(ci): apps/AndroidApp/ only (6) --- apps/AndroidApp/app/README.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 apps/AndroidApp/app/README.md diff --git a/apps/AndroidApp/app/README.md b/apps/AndroidApp/app/README.md new file mode 100644 index 00000000..8d1c8b69 --- /dev/null +++ b/apps/AndroidApp/app/README.md @@ -0,0 +1 @@ +