Skip to content

Commit 949bbe1

Browse files
CedricGuillemetkelsettido64
authored
RNTA + CI (#642)
* baseline: adding RNTA vanilla, it works * wire in the babylon stuff * a couple of temp files * minor cleanup, bump to latest 73 and RNTA * add a quick readme * Update Apps/BRNPlayground/macos/Podfile Co-authored-by: Tommy Nguyen <[email protected]> * Update Apps/BRNPlayground/postinstall.js Co-authored-by: Tommy Nguyen <[email protected]> * Update Apps/BRNPlayground/.gitignore Co-authored-by: Tommy Nguyen <[email protected]> * get CMake to build * add xcworkspace * bump to latest RN and RNTA * RNTA + CI * npm install * java 17 instead of 21(default) because of this issue: jdk.tools.jlink.plugin.PluginException: ModuleTarget is malformed: platformString missing delimiter: android * Windows build * npm install package * msbuild typo * more windows build steps * build steps in CI * path typo * nuget restore * BN build * vcxproj paths * x86 * back to x64 * test w/o --use-nuget * patch rnpermissions vcxproj * back with use-nuget * permissions vcxproj * vcxproj * packages.config * cppwinrt * merge .sln * do not build bundle * props test * import path * props path again * put back libs in * cppwinrt * cmake import props * project imports * windows sdk props * windows sdk version * bump rn permissions * cleaning * bundle build * ios/android builds * windows build debug * nuget * nuget * metro config test * watchman * choco watchman * is this useful? * up rnta * artifact test * ios/android * build output dir * clean up * build windows * build fixes * windows build/cppwinrt * kick build --------- Co-authored-by: Lorenzo Sciandra <[email protected]> Co-authored-by: Lorenzo Sciandra <[email protected]> Co-authored-by: Tommy Nguyen <[email protected]>
1 parent 17b16ca commit 949bbe1

File tree

7 files changed

+1750
-2337
lines changed

7 files changed

+1750
-2337
lines changed

.github/workflows/pr.yml

+120-1
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,44 @@ jobs:
4545
env:
4646
JAVA_HOME: ${{ env.JAVA_HOME_11_X64 }}
4747

48+
build-android-rnta:
49+
runs-on: macos-latest
50+
steps:
51+
- name: Checkout Repo
52+
uses: actions/[email protected]
53+
with:
54+
submodules: 'recursive'
55+
- name: Setup CMake
56+
uses: jwlawson/[email protected]
57+
with:
58+
cmake-version: '3.26.3'
59+
- name: Setup Ninja
60+
run: brew install ninja
61+
- name: Setup Watchman
62+
run: brew install watchman
63+
- name: NPM Install (Playground)
64+
run: npm install
65+
working-directory: ./Apps/BRNPlayground
66+
67+
- name: Build Windows Bundle
68+
run: npm run build:android
69+
working-directory: ./Apps/BRNPlayground
70+
71+
- name: NPM Install (Binary Package)
72+
run: npm install
73+
working-directory: ./Package
74+
- name: Setup Java
75+
uses: actions/setup-java@v3
76+
with:
77+
distribution: 'temurin'
78+
java-version: '17'
79+
check-latest: true
80+
- name: Gulp (Android)
81+
run: npx gulp buildAndroidRNTA
82+
working-directory: ./Package
83+
env:
84+
JAVA_HOME: ${{ env.JAVA_HOME_11_X64 }}
85+
4886
build-iOS:
4987
runs-on: macos-latest
5088
steps:
@@ -69,6 +107,31 @@ jobs:
69107
run: npx gulp buildIOS
70108
working-directory: ./Package
71109

110+
build-iOS-rnta:
111+
runs-on: macos-latest
112+
steps:
113+
- name: Checkout Repo
114+
uses: actions/[email protected]
115+
with:
116+
submodules: 'recursive'
117+
- name: Setup Watchman
118+
run: brew install watchman
119+
120+
- name: NPM Install (Playground)
121+
run: npm install
122+
working-directory: ./Apps/BRNPlayground
123+
124+
- name: Build Windows Bundle
125+
run: npm run build:ios
126+
working-directory: ./Apps/BRNPlayground
127+
128+
- name: NPM Install (Binary Package)
129+
run: npm install
130+
working-directory: ./Package
131+
- name: Gulp (iOS)
132+
run: npx gulp buildIOSRNTA
133+
working-directory: ./Package
134+
72135
test-publish-android-ios:
73136
runs-on: macos-latest
74137
steps:
@@ -152,6 +215,62 @@ jobs:
152215
run: npx gulp buildUWPPlayground${{ matrix.platform }}${{ matrix.config }}
153216
working-directory: ./Package
154217

218+
build-windows-rnta:
219+
runs-on: windows-2019
220+
steps:
221+
- name: Support longpaths
222+
run: git config --system core.longpaths true
223+
- name: Checkout Repo
224+
uses: actions/[email protected]
225+
with:
226+
submodules: 'true'
227+
- name: Setup MSBuild
228+
uses: microsoft/[email protected]
229+
- name: Setup Node 20
230+
uses: actions/setup-node@v3
231+
with:
232+
node-version: 20
233+
234+
- name: Install watchman
235+
run: choco install watchman
236+
working-directory: ./Apps/BRNPlayground
237+
238+
- name: NPM Install RNTA
239+
run: npm install
240+
working-directory: ./Apps/BRNPlayground
241+
242+
- name: Build Windows Bundle
243+
run: npm run build:windows
244+
working-directory: ./Apps/BRNPlayground
245+
246+
- name: NPM Install Package
247+
run: npm install
248+
working-directory: ./Package
249+
250+
- name: NPM Generate Windows Project
251+
run: npx install-windows-test-app
252+
working-directory: ./Apps/BRNPlayground
253+
254+
- name: BabylonNative build directory
255+
run: mkdir @babylonjs/react-native/Build/uwp_x64
256+
working-directory: ./Modules
257+
258+
- name: CMake BabylonNative
259+
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
260+
working-directory: ./Modules/@babylonjs/react-native/Build/uwp_x64
261+
262+
- name: Nuget restore
263+
run: nuget restore BRNPlayground.sln
264+
working-directory: ./Apps/BRNPlayground/windows
265+
266+
- name: Windows build BN
267+
run: MSBuild /p:Platform="x64" /p:Configuration="Release" /m ReactNativeBabylon.sln
268+
working-directory: ./Modules/@babylonjs/react-native/Build/uwp_x64
269+
270+
- name: Windows build BRN
271+
run: MSBuild /p:Platform="x64" /p:Configuration="Release" /m BRNPlayground.sln
272+
working-directory: ./Apps/BRNPlayground/windows
273+
155274
# Test packages
156275
build-android-ios-065:
157276
uses: ./.github/workflows/ios_android.yml
@@ -204,4 +323,4 @@ jobs:
204323
build-typescript:
205324
uses: ./.github/workflows/typescript.yml
206325
with:
207-
release-version: 0.0.${GITHUB_SHA::8}
326+
release-version: 0.0.${GITHUB_SHA::8}

0 commit comments

Comments
 (0)