Skip to content

Commit be5a34b

Browse files
cagnuleinclaude
andcommitted
Fix fitpro-build ABI packaging and fail loudly if it regresses
fitpro-build checks out the claude/fervent-newton-a25bb2 branch for source but always runs under master's workflow definition (scheduled nightly builds). The sed forcing ANDROID_ABIS in defaults.pri before qmake, and the post-build ABI check, were dropped from this job by e7abaeb while merging unrelated Apple Watch kcal work, silently regressing nightly FitPro APKs to arm64-v8a-only. Re-added the sed, and turned the diagnostic unzip -l checks into a hard failure so a future regression breaks CI instead of shipping a broken nightly release. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
1 parent e7abaeb commit be5a34b

1 file changed

Lines changed: 14 additions & 0 deletions

File tree

.github/workflows/main.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2308,6 +2308,11 @@ jobs:
23082308
rm -rf /usr/local/lib/android/sdk/ndk/25.1.8937393
23092309
lrelease src/qdomyos-zwift.pri
23102310
2311+
# Keep FitPro APKs usable on older 32-bit iFIT/ProForm consoles.
2312+
# qmake reads defaults.pri while generating the Android deployment JSON,
2313+
# so force all ABIs there before the build starts.
2314+
sed -i 's/^ANDROID_ABIS = .*/ANDROID_ABIS = armeabi-v7a arm64-v8a x86 x86_64/' defaults.pri
2315+
23112316
# QTHTTPSERVER must use the same NDK
23122317
cd src/qthttpserver
23132318
qmake
@@ -2349,6 +2354,15 @@ jobs:
23492354
fi
23502355
"$GRADLE_DIST_DIR/bin/gradle" -g "$GRADLE_USER_HOME" --no-daemon -p ${{ github.workspace }}/output/android assembleDebug bundleDebug
23512356
mv ${{ github.workspace }}/output/android/build/outputs/apk/debug/android-debug.apk ${{ github.workspace }}/output/android/build/outputs/apk/debug/android-debug-fitpro-${{ matrix.variant.name }}.apk
2357+
APK="${{ github.workspace }}/output/android/build/outputs/apk/debug/android-debug-fitpro-${{ matrix.variant.name }}.apk"
2358+
for ABI in armeabi-v7a arm64-v8a x86 x86_64; do
2359+
for LIB in "libqdomyos-zwift_$ABI.so" "libQt5Core_$ABI.so"; do
2360+
if ! unzip -l "$APK" "lib/$ABI/$LIB" | grep -q "$LIB"; then
2361+
echo "::error::Missing lib/$ABI/$LIB in $APK - ABI packaging is broken"
2362+
exit 1
2363+
fi
2364+
done
2365+
done
23522366
23532367
- name: Archive fitpro binary
23542368
uses: actions/upload-artifact@v4

0 commit comments

Comments
 (0)