perf(ci): optimize JVM memory allocation for Android build
- Consolidate gradle properties with kotlin.daemon.jvmargs - Increase heap and metaspace limits (3g→4g heap, 512m→1g metaspace) - Add kotlin daemon memory options to gradlew command - Remove redundant environment variables and CMAKE settings
This commit is contained in:
@@ -99,11 +99,9 @@ jobs:
|
|||||||
container:
|
container:
|
||||||
image: reactnativecommunity/react-native-android:latest
|
image: reactnativecommunity/react-native-android:latest
|
||||||
env:
|
env:
|
||||||
GRADLE_OPTS: "-Dorg.gradle.daemon=false -Dorg.gradle.parallel=false -Dorg.gradle.workers.max=1 -Dorg.gradle.jvmargs=-Xmx3g -XX:MaxMetaspaceSize=512m -XX:+UseG1GC -XX:ReservedCodeCacheSize=256m"
|
GRADLE_OPTS: "-Dorg.gradle.daemon=false -Dorg.gradle.parallel=false -Dorg.gradle.workers.max=1"
|
||||||
_JAVA_OPTIONS: "-Xmx2g -XX:MaxMetaspaceSize=384m -XX:+UseG1GC -XX:ReservedCodeCacheSize=128m"
|
|
||||||
NODE_OPTIONS: "--max-old-space-size=2048"
|
NODE_OPTIONS: "--max-old-space-size=2048"
|
||||||
NODE_ENV: "production"
|
NODE_ENV: "production"
|
||||||
CMAKE_BUILD_PARALLEL_LEVEL: "3"
|
|
||||||
GRADLE_USER_HOME: /root/.gradle
|
GRADLE_USER_HOME: /root/.gradle
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
@@ -234,7 +232,8 @@ jobs:
|
|||||||
org.gradle.parallel=false
|
org.gradle.parallel=false
|
||||||
org.gradle.configureondemand=false
|
org.gradle.configureondemand=false
|
||||||
org.gradle.workers.max=1
|
org.gradle.workers.max=1
|
||||||
org.gradle.jvmargs=-Xmx3g -XX:MaxMetaspaceSize=512m -XX:+UseG1GC -XX:ReservedCodeCacheSize=256m -XX:+HeapDumpOnOutOfMemoryError
|
org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g -XX:+UseG1GC -XX:ReservedCodeCacheSize=256m -XX:+HeapDumpOnOutOfMemoryError
|
||||||
|
kotlin.daemon.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g -XX:+UseG1GC -XX:ReservedCodeCacheSize=256m
|
||||||
android.enableJetifier=false
|
android.enableJetifier=false
|
||||||
android.useAndroidX=true
|
android.useAndroidX=true
|
||||||
hermesEnabled=true
|
hermesEnabled=true
|
||||||
@@ -266,7 +265,7 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
cd android
|
cd android
|
||||||
chmod +x gradlew
|
chmod +x gradlew
|
||||||
taskset -c 0-7 ./gradlew :app:assembleRelease -PreactNativeArchitectures=arm64-v8a --max-workers=1
|
taskset -c 0-7 ./gradlew :app:assembleRelease -PreactNativeArchitectures=arm64-v8a --max-workers=1 -Dkotlin.daemon.jvm.options="-Xmx2g,XX:MaxMetaspaceSize=1g"
|
||||||
|
|
||||||
- name: Upload APK artifact
|
- name: Upload APK artifact
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
|
|||||||
Reference in New Issue
Block a user