Skip to content

New NPM

New NPM #1985

Workflow file for this run

name: PR Build
on:
pull_request:
branches:
- master
jobs:
build-android:
runs-on: macos-latest
steps:
- name: Checkout Repo
uses: actions/[email protected]
with:
submodules: 'recursive'
- name: Setup CMake
uses: jwlawson/[email protected]
with:
cmake-version: '3.30.3'
- name: Setup Watchman
run: brew install watchman
- name: NPM Install (Binary Package)
run: npm install
working-directory: ./Package
- name: Build BabylonNative source tree
run: npx gulp buildBabylonNativeSourceTree
working-directory: ./Package
- name: NPM Install (Playground)
run: npm install
working-directory: ./Apps/Playground
# - name: Build Android Bundle
# run: npm run build:android
# working-directory: ./Apps/Playground
- 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-iOS:
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 (Binary Package)
run: npm install
working-directory: ./Package
- name: Build BabylonNative source tree
run: npx gulp buildBabylonNativeSourceTree
working-directory: ./Package
- name: NPM Install (Playground)
run: npm install
working-directory: ./Apps/Playground
- name: POD Install
run: pod install
working-directory: ./Apps/Playground/ios
# - name: Build iOS Bundle
# run: npm run build:ios
# working-directory: ./Apps/Playground
- name: Gulp (iOS)
run: npx gulp buildIOS
working-directory: ./Package
build-windows:
runs-on: windows-latest
continue-on-error: true
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/Playground
- name: NPM Install (Binary Package)
run: npm install
working-directory: ./Package
- name: Build BabylonNative source tree
run: npx gulp buildBabylonNativeSourceTree
working-directory: ./Package
- name: NPM Install (Playground)
run: npm install
working-directory: ./Apps/Playground
# - name: Build Windows Bundle
# run: npm run build:windows
# working-directory: ./Apps/Playground
- name: NPM Generate Windows Project
run: npx install-windows-test-app
working-directory: ./Apps/Playground
- name: Nuget restore
run: nuget restore Playground.sln
working-directory: ./Apps/Playground/windows
- name: Windows build Playground
run: MSBuild /p:Platform="x64" /p:Configuration="Release" /p:WindowsTargetPlatformVersion=10.0.19041.0 /m Playground.sln
working-directory: ./Apps/Playground/windows
build-typescript:
uses: ./.github/workflows/typescript.yml
with:
release-version: 0.0.${GITHUB_SHA::8}
package:
needs: [build-typescript] #, build-iOS, build-android]
runs-on: macos-latest
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: Publish Package dry run
run: |
npm publish --access public --dry-run
npm pack
working-directory: ./Package/Assembled
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Upload .tgz tarball
uses: actions/upload-artifact@v4
with:
name: BabylonReactNative
path: "./Package/Assembled/*.tgz"