Files
loto-android/.github/workflows/release.yml
T

54 lines
1.3 KiB
YAML

name: release
on:
push:
tags: ['v*.*.*']
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Node 22
uses: actions/setup-node@v4
with:
node-version: '22'
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: '21'
- name: Set up Gradle
uses: gradle/actions/setup-gradle@v3
- name: Install wrapper deps
run: npm ci
- name: Build loto + sync into Android
run: npm run build
- name: Decode keystore
run: echo "${{ secrets.KEYSTORE_BASE64 }}" | base64 -d > keystore.jks
- name: Build signed AAB + APK
working-directory: android
env:
LOTO_KEYSTORE_PATH: ${{ github.workspace }}/keystore.jks
LOTO_KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
LOTO_KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
LOTO_KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
run: ./gradlew :app:bundleRelease :app:assembleRelease
- name: Upload to GitHub Release
uses: softprops/action-gh-release@v2
with:
files: |
android/app/build/outputs/apk/release/*.apk
android/app/build/outputs/bundle/release/*.aab