Build system with RNTA for RN 0.73+ #1784
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: PR Build | |
on: | |
pull_request: | |
branches: | |
- master | |
jobs: | |
# build-ios-android-rnta: | |
# runs-on: macos-latest | |
# strategy: | |
# matrix: | |
# platform: [ios, android] | |
# react-native-version: ['0.73', '0.74'] | |
# steps: | |
# - name: Checkout Repo | |
# uses: actions/[email protected] | |
# - name: Setup CMake | |
# uses: jwlawson/[email protected] | |
# with: | |
# cmake-version: '3.26.3' | |
# - name: Setup Ninja | |
# run: brew install ninja | |
# - name: Setup Watchman | |
# run: brew install watchman | |
# - name: Free space | |
# uses: ./.github/workflows/macos_freespace | |
# - name: Set React-Native version ${{ matrix.react-native-version }} | |
# run: npm run set-react-version -- ${{ matrix.react-native-version }} | |
# working-directory: ./Apps/BRNPlayground | |
# - name: NPM Install (BRNPlayground) | |
# run: npm install | |
# working-directory: ./Apps/BRNPlayground | |
# | |
# - name: Build Bundle | |
# run: npm run build:${{ matrix.platform }} | |
# working-directory: ./Apps/BRNPlayground | |
# | |
# - 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 ${{ matrix.platform }} | |
# run: npx gulp build${{ matrix.platform }}RNTA | |
# working-directory: ./Package | |
# env: | |
# JAVA_HOME: ${{ env.JAVA_HOME_11_X64 }} | |
build-upload-ios-android-rnta: | |
runs-on: macos-latest | |
strategy: | |
matrix: | |
react-native-version: ['0.73', '0.74'] | |
steps: | |
- name: Checkout Repo | |
uses: actions/[email protected] | |
- name: Setup CMake | |
uses: jwlawson/[email protected] | |
with: | |
cmake-version: '3.26.3' | |
- name: Setup Ninja | |
run: brew install ninja | |
- name: Setup Watchman | |
run: brew install watchman | |
- name: Free space | |
uses: ./.github/workflows/macos_freespace | |
- name: Set React-Native version ${{ matrix.react-native-version }} | |
run: npm run set-react-version -- ${{ matrix.react-native-version }} | |
working-directory: ./Apps/BRNPlayground | |
- name: NPM Install (BRNPlayground) | |
run: npm install | |
working-directory: ./Apps/BRNPlayground | |
- name: Build Bundle iOS | |
run: npm run build:ios | |
working-directory: ./Apps/BRNPlayground | |
- name: Build Bundle Android | |
run: npm run build:android | |
working-directory: ./Apps/BRNPlayground | |
- 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 build iOS and Android | |
run: npx gulp buildRNTA | |
working-directory: ./Package | |
env: | |
JAVA_HOME: ${{ env.JAVA_HOME_11_X64 }} | |
- name: Upload Assembled iOS Android Folder | |
uses: actions/upload-artifact@v4 | |
with: | |
name: 'Assembled-iOSAndroid${{ matrix.react-native-version }}' | |
path: Package/Assembled-iOSAndroid | |
- name: Upload Assembled iOS Android BaseKit Folder | |
uses: actions/upload-artifact@v4 | |
with: | |
name: 'Assembled-BaseKit-iOSAndroid${{ matrix.react-native-version }}' | |
path: Package/Assembled-BaseKit-iOSAndroid | |
build-typescript: | |
uses: ./.github/workflows/typescript.yml | |
with: | |
release-version: 0.0.${GITHUB_SHA::8} | |
publish-react-native: | |
needs: [build-typescript, build-upload-ios-android-rnta] | |
runs-on: macos-latest | |
strategy: | |
matrix: | |
react-native-version: ['0.73', '0.74'] | |
steps: | |
- name: Checkout Repo | |
uses: actions/[email protected] | |
- name: NPM Install (Binary Package) | |
run: npm install | |
working-directory: ./Package | |
- name: Download Assembled Folder | |
uses: actions/download-artifact@v4 | |
with: | |
name: 'Assembled' | |
path: Package/Assembled | |
- name: Display structure of downloaded Assembled and Assembled-Windows folders | |
run: ls -R | |
- name: Version & Publish Package @babylonjs/react-native | |
run: | | |
npm version --no-git-tag-version 0.0.${GITHUB_SHA::8} | |
npm publish --access public --dry-run | |
working-directory: ./Package/Assembled | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
publish-react-native-iosandroid: | |
needs: [build-typescript, build-upload-ios-android-rnta] | |
runs-on: macos-latest | |
strategy: | |
matrix: | |
react-native-version: ['0.73', '0.74'] | |
basekit: ['', '-BaseKit'] | |
steps: | |
- name: Checkout Repo | |
uses: actions/[email protected] | |
- name: NPM Install (Binary Package) | |
run: npm install | |
working-directory: ./Package | |
- name: Download Assembled${{ matrix.basekit }}-iOSAndroid ${{ matrix.react-native-version }} Folder | |
uses: actions/download-artifact@v4 | |
with: | |
name: 'Assembled${{ matrix.basekit }}-iOSAndroid${{ matrix.react-native-version }}' | |
path: Package/Assembled | |
- name: Display structure of downloaded Assembled and Assembled-Windows folders | |
run: ls -R | |
- name: Version & Publish Package @babylonjs/react-native${{ matrix.basekit }}-iosandroid | |
run: | | |
npm version --no-git-tag-version 0.0.${GITHUB_SHA::8} | |
npm publish --access public --dry-run | |
working-directory: ./Package/Assembled | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} |