@@ -14,17 +14,29 @@ jobs:
1414 env :
1515 EXPO_PUBLIC_CONVEX_URL : https://placeholder.convex.cloud
1616 EXPO_PUBLIC_AUTH_BASE_URL : https://placeholder.convex.site
17- ANDROID_HOME : /usr/local/lib/android/sdk
18- ANDROID_SDK_ROOT : /usr/local/lib/android/sdk
1917 GRADLE_OPTS : " -Dorg.gradle.jvmargs=-Xmx4096m -Dorg.gradle.daemon=false"
2018 EXPO_NO_TELEMETRY : " 1"
2119 CI : " true"
2220
2321 steps :
2422 - uses : actions/checkout@v4
2523
26- - uses : actions/setup-java@v4
27- with : { java-version: '17', distribution: 'temurin' }
24+ - name : Set up Java 17
25+ uses : actions/setup-java@v4
26+ with :
27+ java-version : ' 17'
28+ distribution : ' temurin'
29+
30+ - name : Set up Android SDK (clean)
31+ uses : android-actions/setup-android@v3
32+ with :
33+ packages : >
34+ tools
35+ platform-tools
36+ platforms;android-34
37+ build-tools;34.0.0
38+ ndk;26.1.10909125
39+ cmake;3.22.1
2840
2941 - uses : actions/setup-node@v4
3042 with : { node-version: '20' }
3648 working-directory : apps/native
3749 run : bun install --ignore-scripts
3850
39- - name : Set up Android SDK
40- run : |
41- SDKM=$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager
42- yes | $SDKM --licenses 2>/dev/null || true
43- $SDKM "platform-tools" "platforms;android-34" "build-tools;34.0.0" 2>&1 | tail -3
44-
4551 - name : Expo prebuild
4652 working-directory : apps/native
4753 continue-on-error : true
@@ -56,37 +62,30 @@ jobs:
5662 [ -n "$GRADLEW" ] || { echo "No gradlew"; exit 1; }
5763 echo "gradlew=$GRADLEW" >> $GITHUB_OUTPUT
5864 echo "android_dir=$(dirname $GRADLEW)" >> $GITHUB_OUTPUT
65+ chmod +x $GRADLEW
5966
6067 - name : Cache Gradle
6168 uses : actions/cache@v4
6269 with :
6370 path : |
6471 ~/.gradle/wrapper
6572 ~/.gradle/caches
66- key : ${{ runner.os }}-gradle-${{ hashFiles('**/gradle-wrapper.properties') }}
67- restore-keys : ${{ runner.os }}-gradle-
73+ key : ${{ runner.os }}-gradle-${{ hashFiles('**/gradle-wrapper.properties') }}-v2
74+ restore-keys : |
75+ ${{ runner.os }}-gradle-
6876
69- - name : Build debug APK (output to file)
70- id : gradle
77+ - name : Build debug APK
78+ working-directory : ${{ steps.find-android.outputs.android_dir }}
7179 run : |
72- chmod +x ${{ steps.find-android.outputs.gradlew }}
73- cd ${{ steps.find-android.outputs.android_dir }}
74- echo "=== gradle.properties ==" >> /tmp/gradle.log
75- cat gradle.properties >> /tmp/gradle.log 2>&1
76- echo "" >> /tmp/gradle.log
77- echo "=== build-tools ==" >> /tmp/gradle.log
78- ls $ANDROID_HOME/build-tools/ >> /tmp/gradle.log 2>&1
79- echo "=== platforms ==" >> /tmp/gradle.log
80- ls $ANDROID_HOME/platforms/ >> /tmp/gradle.log 2>&1
81- echo "" >> /tmp/gradle.log
82- echo "=== Gradle build ==" >> /tmp/gradle.log
83- ./gradlew assembleDebug --no-daemon --stacktrace >> /tmp/gradle.log 2>&1
84- RC=$?
85- tail -100 /tmp/gradle.log
86- echo "exit=$RC" >> $GITHUB_OUTPUT
87- exit $RC
80+ echo "=== Build environment ==="
81+ echo "ANDROID_HOME=$ANDROID_HOME"
82+ ls $ANDROID_HOME/build-tools/ 2>/dev/null
83+ ls $ANDROID_HOME/platforms/ 2>/dev/null
84+ ls $ANDROID_HOME/ndk/ 2>/dev/null | head -3
85+ echo "=== Gradle build ==="
86+ ./gradlew assembleDebug --no-daemon --no-build-cache --stacktrace 2>&1 | tee /tmp/gradle.log | tail -80
8887
89- - name : Upload Gradle log (always)
88+ - name : Upload Gradle log
9089 if : always()
9190 uses : actions/upload-artifact@v4
9291 with :
0 commit comments