From 95069ff263a6f974fb7ff323fa7384d1494df632 Mon Sep 17 00:00:00 2001 From: Brendan Greenlee Date: Sat, 1 Aug 2026 15:14:07 +0000 Subject: [PATCH] CI: build debug APK on push to main and upload as artifact --- .github/workflows/build-apk.yml | 49 +++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 .github/workflows/build-apk.yml diff --git a/.github/workflows/build-apk.yml b/.github/workflows/build-apk.yml new file mode 100644 index 0000000..e50b003 --- /dev/null +++ b/.github/workflows/build-apk.yml @@ -0,0 +1,49 @@ +name: Build APK + +on: + push: + branches: [main] + pull_request: + branches: [main] + workflow_dispatch: + +concurrency: + group: build-${{ github.ref }} + cancel-in-progress: true + +jobs: + build: + name: Build debug APK + runs-on: ubuntu-latest + timeout-minutes: 60 + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: temurin + java-version: '17' + + - name: Set up Android SDK + uses: android-actions/setup-android@v3 + + - name: Build debug APK + run: | + ./gradlew :app:assembleThirdPartyDebug --no-daemon --stacktrace + + - name: Upload APK artifact + uses: actions/upload-artifact@v4 + with: + name: openclaw-android-heartbeat-debug + path: app/build/outputs/apk/thirdParty/debug/*.apk + if-no-files-found: error + retention-days: 30 + + # Future: release builds — add keystore secrets (ANDROID_KEYSTORE_BASE64, + # ANDROID_KEYSTORE_PASSWORD, ANDROID_KEY_ALIAS, ANDROID_KEY_PASSWORD) to + # repo secrets, then add a `release` job that signs and uploads to + # GitHub Releases.