Skip to content

spike(v4): evaluate Tauri 2 Studio shell feasibility #77

spike(v4): evaluate Tauri 2 Studio shell feasibility

spike(v4): evaluate Tauri 2 Studio shell feasibility #77

Workflow file for this run

name: Android APK
on:
push:
branches: [main]
pull_request:
workflow_dispatch:
permissions:
contents: read
jobs:
build:
name: Test, lint, and build debug APK
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Set up JDK
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: "17"
- name: Set up Android SDK
uses: android-actions/setup-android@v3
- name: Install Android build packages
run: sdkmanager "platforms;android-35" "build-tools;35.0.0" "cmake;3.22.1" "ndk;27.0.12077973"
- name: Compute Android version metadata
id: version
run: |
echo "code=$(git log -1 --format=%ct)" >> "$GITHUB_OUTPUT"
- name: Run repository tests
run: |
python -m pip install --disable-pip-version-check pytest
python -m pytest -q
- name: Run Android unit tests and lint, then build APK
working-directory: android
env:
OPENSTREAM_VERSION_NAME: 2.0.0-beta.${{ steps.version.outputs.code }}
OPENSTREAM_VERSION_CODE: ${{ steps.version.outputs.code }}
run: |
chmod +x ./gradlew
./gradlew --no-daemon :app:testDebugUnitTest :app:lintDebug :app:assembleDebug
- name: Normalize Android build assets
run: |
mkdir -p dist
cp android/app/build/outputs/apk/debug/app-debug.apk dist/openstream-android.apk
(cd dist && sha256sum openstream-android.apk > openstream-android.apk.sha256)
APK_SHA256="$(cut -d ' ' -f 1 dist/openstream-android.apk.sha256)"
printf 'debug-signed-beta\n' > dist/android-signing.txt
printf '{\n "versionName": "2.0.0-beta.%s",\n "versionCode": %s,\n "apkAsset": "openstream-android.apk",\n "apkSha256": "%s"\n}\n' \
"${{ steps.version.outputs.code }}" \
"${{ steps.version.outputs.code }}" \
"$APK_SHA256" \
> dist/openstream-android-update.json
- name: Upload APK
uses: actions/upload-artifact@v4
with:
name: openstream-android-debug-apk
path: |
dist/openstream-android.apk
dist/openstream-android.apk.sha256
dist/android-signing.txt
dist/openstream-android-update.json
if-no-files-found: error