Skip to content

chore: bump brownfield-gradle-plugin to v1.0.0 #521

chore: bump brownfield-gradle-plugin to v1.0.0

chore: bump brownfield-gradle-plugin to v1.0.0 #521

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
concurrency:
group: pr-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
check-changeset:
name: Check changeset
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6
with:
fetch-depth: 0
- name: Setup
uses: ./.github/actions/setup
- name: Check changeset
if: github.ref != 'refs/heads/main'
run: yarn changeset status --since=origin/${{ github.base_ref }}
build-lint:
name: Build & static code analysis
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6
- name: Setup
uses: ./.github/actions/setup
- name: Build packages
run: yarn build
- name: Lint files
run: yarn lint
- name: Typecheck files
run: yarn typecheck
- name: Test Brownfield CLI (version)
run: |
yarn workspace @callstack/react-native-brownfield brownfield --version
android-tester-integrated:
name: Android road test (TesterIntegrated)
runs-on: ubuntu-latest
needs: build-lint
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6
- name: Setup
uses: ./.github/actions/setup
- name: Prepare Android environment
uses: ./.github/actions/prepare-android
- name: Restore Gradle cache
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-android-tester-integrated-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-android-tester-integrated-gradle-
# == TesterIntegrated ==
- name: Generate Brownie stores
run: yarn run brownfield:codegen
- name: Build integrated Android tester app
run: yarn run build:tester-integrated:android
android-androidapp-expo:
name: Android road test (RNApp & AndroidApp - Expo)
runs-on: ubuntu-latest
needs: build-lint
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6
- name: Run RNApp -> AndroidApp road test (Expo)
uses: ./.github/actions/androidapp-road-test
with:
flavor: expo
rn-project-path: apps/ExpoApp
rn-project-maven-path: com/callstack/rnbrownfield/demo/expoapp/brownfieldlib
android-androidapp-vanilla:
name: Android road test (RNApp & AndroidApp - Vanilla)
runs-on: ubuntu-latest
needs: build-lint
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6
- name: Run RNApp -> AndroidApp road test (Vanilla)
uses: ./.github/actions/androidapp-road-test
with:
flavor: vanilla
rn-project-path: apps/RNApp
rn-project-maven-path: com/rnapp/brownfieldlib
ios-tester-integrated:
name: iOS road test (TesterIntegrated)
runs-on: macos-26
needs: build-lint
env:
USE_CCACHE: 1
CCACHE_DIR: ${{ github.workspace }}/.ios_ccache
CCACHE_BASEDIR: ${{ github.workspace }}
CCACHE_COMPRESS: '1'
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6
- name: Setup
uses: ./.github/actions/setup
- name: Prepare iOS environment
uses: ./.github/actions/prepare-ios
- name: Install ccache
run: brew install ccache
- name: Enable ccache
run: echo "$(brew --prefix)/opt/ccache/libexec" >> $GITHUB_PATH
- name: Restore TesterIntegrated ccache
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5
with:
path: |
.ios_ccache
key: ${{ runner.os }}-tester-integrated-ios-ccache-${{ hashFiles('apps/TesterIntegrated/swift/Podfile.lock', 'apps/TesterIntegrated/swift/SwiftExample.xcodeproj/project.pbxproj') }}
restore-keys: |
${{ runner.os }}-tester-integrated-ios-ccache-
# == TesterIntegrated ==
- name: Restore Pods cache (TesterIntegrated)
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5
with:
path: |
apps/TesterIntegrated/swift/Pods
key: ${{ runner.os }}-tester-integrated-ios-pods-${{ hashFiles('apps/TesterIntegrated/swift/Podfile.lock') }}
restore-keys: |
${{ runner.os }}-tester-integrated-ios-pods-
- name: Install pods (TesterIntegrated)
run: |
cd apps/TesterIntegrated/swift
pod install
- name: Restore DerivedData cache (TesterIntegrated)
uses: actions/cache@v5
with:
path: apps/TesterIntegrated/swift/build
key: ${{ runner.os }}-ios-tester-integrated-derived-data-${{ hashFiles('apps/TesterIntegrated/swift/Podfile.lock', 'apps/TesterIntegrated/swift/SwiftExample.xcodeproj/project.pbxproj') }}
restore-keys: |
${{ runner.os }}-ios-tester-integrated-derived-data-
- name: Build integrated iOS tester app
run: |
yarn run build:tester-integrated:ios
# ==============
- name: Log ccache stats
uses: ./.github/actions/ccache-summary
with:
name: TesterIntegrated
ios-appleapp-vanilla:
name: iOS road test (RNApp & AppleApp - Vanilla)
runs-on: macos-26
needs: build-lint
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6
- name: Run RNApp -> AppleApp road test (Vanilla)
uses: ./.github/actions/appleapp-road-test
with:
variant: vanilla
rn-project-path: apps/RNApp
ios-appleapp-expo:
name: iOS road test (RNApp & AppleApp - Expo)
runs-on: macos-26
needs: build-lint
steps:
- name: Checkout
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6
- name: Run ExpoApp -> AppleApp road test (Expo)
uses: ./.github/actions/appleapp-road-test
with:
variant: expo
rn-project-path: apps/ExpoApp