Skip to content

Commit

Permalink
Use patch to select RN version for RNTA
Browse files Browse the repository at this point in the history
  • Loading branch information
CedricGuillemet committed Jun 17, 2024
1 parent 949bbe1 commit c066ea4
Show file tree
Hide file tree
Showing 3 changed files with 7,006 additions and 281 deletions.
289 changes: 8 additions & 281 deletions .github/workflows/pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,46 +7,11 @@ env:
BRN_Version: '0.64'

jobs:
build-android:
runs-on: macos-latest
steps:
- name: Checkout Repo
uses: actions/[email protected]
with:
submodules: 'recursive'
- name: Setup Node 16
uses: actions/setup-node@v3
with:
node-version: 16
- name: Setup CMake
uses: jwlawson/[email protected]
with:
cmake-version: '3.26.3'
- name: Setup Ninja
run: brew install ninja
- name: NPM Install (Playground)
run: npm install
working-directory: ./Apps/Playground
- name: NPM Install (React Native ${{ env.BRN_Version }})
run: npm run select ${{ env.BRN_Version }}
working-directory: ./Apps/Playground
- name: NPM Install (Binary Package)
run: npm install
working-directory: ./Package
- name: Setup Java
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '17'
check-latest: true
- name: Gulp (Android)
run: npx gulp buildAndroid
working-directory: ./Package
env:
JAVA_HOME: ${{ env.JAVA_HOME_11_X64 }}

build-android-rnta:
runs-on: macos-latest
strategy:
matrix:
react-native-version: ['0.71', '0.73']
steps:
- name: Checkout Repo
uses: actions/[email protected]
Expand All @@ -60,7 +25,10 @@ jobs:
run: brew install ninja
- name: Setup Watchman
run: brew install watchman
- name: NPM Install (Playground)
- name: Patch BRNPlayground for RN ${{ matrix.react-native-version }}
run: git apply rnta-${{ matrix.react-native-version }}.patch --allow-empty
working-directory: ./Apps
- name: NPM Install (BRNPlayground)
run: npm install
working-directory: ./Apps/BRNPlayground

Expand All @@ -82,245 +50,4 @@ jobs:
working-directory: ./Package
env:
JAVA_HOME: ${{ env.JAVA_HOME_11_X64 }}

build-iOS:
runs-on: macos-latest
steps:
- name: Checkout Repo
uses: actions/[email protected]
with:
submodules: 'recursive'
- name: Setup Node 16
uses: actions/setup-node@v3
with:
node-version: 16
- name: NPM Install (Playground)
run: npm install
working-directory: ./Apps/Playground
- name: NPM Install (React Native ${{ env.BRN_Version }})
run: npm run select --reactNative ${{ env.BRN_Version }}
working-directory: ./Apps/Playground
- name: NPM Install (Binary Package)
run: npm install
working-directory: ./Package
- name: Gulp (iOS)
run: npx gulp buildIOS
working-directory: ./Package

build-iOS-rnta:
runs-on: macos-latest
steps:
- name: Checkout Repo
uses: actions/[email protected]
with:
submodules: 'recursive'
- name: Setup Watchman
run: brew install watchman

- name: NPM Install (Playground)
run: npm install
working-directory: ./Apps/BRNPlayground

- name: Build Windows Bundle
run: npm run build:ios
working-directory: ./Apps/BRNPlayground

- name: NPM Install (Binary Package)
run: npm install
working-directory: ./Package
- name: Gulp (iOS)
run: npx gulp buildIOSRNTA
working-directory: ./Package

test-publish-android-ios:
runs-on: macos-latest
steps:
- name: Checkout Repo
uses: actions/[email protected]
with:
submodules: 'recursive'
- name: Setup Node 16
uses: actions/setup-node@v3
with:
node-version: 16
- name: Setup CMake
uses: jwlawson/[email protected]
with:
cmake-version: '3.26.3'
- name: Setup Ninja
run: brew install ninja
- name: Setup Java
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '17'
check-latest: true
- name: NPM Install (Playground)
run: npm install
working-directory: ./Apps/Playground
- name: NPM Install (React Native ${{ env.BRN_Version }})
run: npm run select --reactNative ${{ env.BRN_Version }}
working-directory: ./Apps/Playground
- name: NPM Install (Binary Package)
run: npm install
working-directory: ./Package
- name: Gulp
run: npx gulp
working-directory: ./Package
env:
JAVA_HOME: ${{ env.JAVA_HOME_11_X64 }}

build-windows:
runs-on: windows-2019
strategy:
matrix:
platform: [x86, x64, ARM64]
config: [Debug, Release]
steps:
- name: Support longpaths
run: git config --system core.longpaths true
- name: Checkout Repo
uses: actions/[email protected]
with:
submodules: 'true'
- name: Setup MSBuild
uses: microsoft/[email protected]
- name: Setup Node 16
uses: actions/setup-node@v3
with:
node-version: 16
- name: Setup NuGet
uses: nuget/setup-nuget@v1
with:
nuget-version: '5.x'
- name: NPM Install (Playground)
run: npm install
working-directory: ./Apps/Playground
- name: NPM Install (React Native ${{ env.BRN_Version }})
run: npm run select ${{ env.BRN_Version }}
working-directory: ./Apps/Playground
- name: NPM Install (Binary Package)
run: npm install
working-directory: ./Package
- name: Gulp Setup Project ${{ matrix.platform }} (Windows)
run: npx gulp makeUWPProject${{ matrix.platform }}
working-directory: ./Package
- name: Gulp Build ${{ matrix.platform }} ${{ matrix.config }} (Windows)
run: npx gulp buildUWP${{ matrix.platform }}${{ matrix.config }}
working-directory: ./Package
- name: Gulp NuGet Restore Playground
run: npx gulp nugetRestoreUWPPlayground
working-directory: ./Package
- name: Gulp Build ${{ matrix.platform }} ${{ matrix.config }} Playground (Windows)
run: npx gulp buildUWPPlayground${{ matrix.platform }}${{ matrix.config }}
working-directory: ./Package

build-windows-rnta:
runs-on: windows-2019
steps:
- name: Support longpaths
run: git config --system core.longpaths true
- name: Checkout Repo
uses: actions/[email protected]
with:
submodules: 'true'
- name: Setup MSBuild
uses: microsoft/[email protected]
- name: Setup Node 20
uses: actions/setup-node@v3
with:
node-version: 20

- name: Install watchman
run: choco install watchman
working-directory: ./Apps/BRNPlayground

- name: NPM Install RNTA
run: npm install
working-directory: ./Apps/BRNPlayground

- name: Build Windows Bundle
run: npm run build:windows
working-directory: ./Apps/BRNPlayground

- name: NPM Install Package
run: npm install
working-directory: ./Package

- name: NPM Generate Windows Project
run: npx install-windows-test-app
working-directory: ./Apps/BRNPlayground

- name: BabylonNative build directory
run: mkdir @babylonjs/react-native/Build/uwp_x64
working-directory: ./Modules

- name: CMake BabylonNative
run: cmake -G "Visual Studio 16 2019" -D CMAKE_SYSTEM_NAME=WindowsStore -D CMAKE_SYSTEM_VERSION=10.0.19041.0 -DCMAKE_UNITY_BUILD=true -D CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION_MAXIMUM=10.0.19041.0 -A x64 ./../../../react-native-windows/windows
working-directory: ./Modules/@babylonjs/react-native/Build/uwp_x64

- name: Nuget restore
run: nuget restore BRNPlayground.sln
working-directory: ./Apps/BRNPlayground/windows

- name: Windows build BN
run: MSBuild /p:Platform="x64" /p:Configuration="Release" /m ReactNativeBabylon.sln
working-directory: ./Modules/@babylonjs/react-native/Build/uwp_x64

- name: Windows build BRN
run: MSBuild /p:Platform="x64" /p:Configuration="Release" /m BRNPlayground.sln
working-directory: ./Apps/BRNPlayground/windows

# Test packages
build-android-ios-065:
uses: ./.github/workflows/ios_android.yml
with:
react-native-version: '0.65'
release-version: 0.0.${GITHUB_SHA::8}

build-android-ios-069:
uses: ./.github/workflows/ios_android.yml
with:
react-native-version: '0.69'
release-version: 0.0.${GITHUB_SHA::8}

build-android-ios-070:
uses: ./.github/workflows/ios_android.yml
with:
react-native-version: '0.70'
release-version: 0.0.${GITHUB_SHA::8}

build-android-ios-071:
uses: ./.github/workflows/ios_android.yml
with:
react-native-version: '0.71'
release-version: 0.0.${GITHUB_SHA::8}

build-windows-065:
uses: ./.github/workflows/windows.yml
with:
react-native-version: '0.65'
release-version: 0.0.${GITHUB_SHA::8}

build-windows-069:
uses: ./.github/workflows/windows.yml
with:
react-native-version: '0.69'
release-version: 0.0.${GITHUB_SHA::8}

build-windows-070:
uses: ./.github/workflows/windows.yml
with:
react-native-version: '0.70'
release-version: 0.0.${GITHUB_SHA::8}

build-windows-071:
uses: ./.github/workflows/windows.yml
with:
react-native-version: '0.71'
release-version: 0.0.${GITHUB_SHA::8}

build-typescript:
uses: ./.github/workflows/typescript.yml
with:
release-version: 0.0.${GITHUB_SHA::8}

Loading

0 comments on commit c066ea4

Please sign in to comment.