From 9d19f23e1fdd65d2bb46230155fc807fba007077 Mon Sep 17 00:00:00 2001 From: Pieter Vander Vennet Date: Mon, 28 Apr 2025 02:56:53 +0200 Subject: [PATCH] Scripts: attempt to build android --- .forgejo/workflows/workflows/on_release.yml | 55 +++++++++++++++++++++ android | 2 +- 2 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 .forgejo/workflows/workflows/on_release.yml diff --git a/.forgejo/workflows/workflows/on_release.yml b/.forgejo/workflows/workflows/on_release.yml new file mode 100644 index 0000000000..d8b209579e --- /dev/null +++ b/.forgejo/workflows/workflows/on_release.yml @@ -0,0 +1,55 @@ +name: Android Signed Build and Release + +on: + push: + + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: https://source.mapcomplete.org/actions/checkout@v4 + - uses: https://source.mapcomplete.org/actions/setup-android@v3.2.2 + + - name: Set up Node.js + uses: https://source.mapcomplete.org/actions/setup-node@v4 + with: + node-version: "20" + cache: "npm" + cache-dependency-path: package-lock.json + + - name: install deps + run: npm ci + shell: bash + + - run: mkdir -p ./assets/generated && npm run init + + - name: Decode keystore + run: | + echo "${{ secrets.KEYSTORE_BASE64 }}" | base64 -d > my-release-key.jks + + - name: Set up gradle properties + run: | + mkdir -p ~/.gradle + echo "storeFile=my-release-key.jks" >> ~/.gradle/gradle.properties + echo "storePassword=${{ secrets.KEYSTORE_PASSWORD }}" >> ~/.gradle/gradle.properties + echo "keyAlias=${{ secrets.KEY_ALIAS }}" >> ~/.gradle/gradle.properties + echo "keyPassword=${{ secrets.KEY_PASSWORD }}" >> ~/.gradle/gradle.properties + + - name: Grant execute permission to gradlew + run: cd android && chmod +x ./gradlew + + - name: Build signed APK + run: | + cd android + export ANDROID_SDK_HOME=/home/runner/.android/sdk/ + export PATH=$ANDROID_SDK_HOME/tools:$ANDROID_SDK_HOME/platform-tools:$ANDROID_SDK_HOME/:$ANDROID_SDK_HOME/cmdline-tools/latest/tools/bin:$PATH + ./gradlew assembleRelease + + - name: Upload APK to Release + uses: https://code.forgejo.org/actions/forgejo-release@v2 + with: + files: android/app/build/outputs/apk/release/*.apk + env: + FORGEJO_TOKEN: ${{ secrets.FORGEJO_TOKEN }} diff --git a/android b/android index 5ca477e3fb..d404f93e88 160000 --- a/android +++ b/android @@ -1 +1 @@ -Subproject commit 5ca477e3fb53129803fffb631d5465206fccc1c4 +Subproject commit d404f93e8835c76813a1d0696b69890711280368