first
Node CI Pipeline / build (push) Failing after 48s

This commit is contained in:
Gitea
2026-04-20 17:03:24 +05:30
parent cb37c63434
commit 02a7a6c2f6
+28 -81
View File
@@ -1,101 +1,48 @@
name: RN APK Build name: Node CI Pipeline
on: on:
push: push:
branches: branches:
- main - main
- master
- develop
pull_request:
branches:
- main
- master
- develop
jobs: jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
env:
ANDROID_SDK_ROOT: ${{ runner.temp }}/android-sdk
steps: steps:
# 1. Checkout code # Checkout code
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
# 2. Node setup # Setup Node.js
- name: Setup Node - name: Setup Node.js
uses: actions/setup-node@v4 uses: actions/setup-node@v4
with: with:
node-version: 20 node-version: 22
cache: npm
# 3. Install JS deps # Diagnostics
- name: Diagnostics
run: |
set -e
node -v
npm -v
pwd
# Install dependencies
- name: Install dependencies - name: Install dependencies
run: npm install run: npm ci
# 4. Java setup # Lint
- name: Setup Java - name: ESLint
uses: actions/setup-java@v4 run: npm run lint
with:
distribution: temurin
java-version: 17
# 5. Gradle cache # Optional Test (uncomment if needed)
- name: Cache Gradle # - name: Jest Tests
uses: actions/cache@v4 # run: npm test -- --ci --coverage
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: gradle-
# 6. Maven cache
- name: Cache Maven
uses: actions/cache@v4
with:
path: ~/.m2/repository
key: maven-${{ hashFiles('**/*.gradle*') }}
restore-keys: maven-
# 7. Android SDK setup
- name: Setup Android SDK
uses: android-actions/setup-android@v2
with:
accept-android-sdk-licenses: true
# 8. Install SDK components
- name: Install SDK Components
run: |
sdkmanager \
"platform-tools" \
"platforms;android-36" \
"build-tools;36.0.0" \
"ndk;27.1.12297006" \
"cmake;3.22.1"
# 9. Gradlew permission
- name: Make Gradlew executable
run: chmod +x android/gradlew
# 10. Clean build (safe)
- name: Clean project
run: cd android && ./gradlew clean
# 11. Build APK
- name: Build Release APK
run: |
cd android
./gradlew assembleRelease \
--no-daemon \
--stacktrace \
-Dorg.gradle.jvmargs="-Xmx4g -Dfile.encoding=UTF-8" \
-Dorg.gradle.daemon=false \
-Pandroid.ndkVersion=27.1.12297006 \
-Pandroid.ndkPath=$ANDROID_SDK_ROOT/ndk/27.1.12297006
# 12. Verify APK
- name: Show APK
run: find android/app/build/outputs/apk -name "*.apk"
# 13. Upload APK artifact
- name: Upload APK
uses: actions/upload-artifact@v4
with:
name: app-release
path: android/app/build/outputs/apk/release/app-release.apk