Skip to content

ci: adjust ci

ci: adjust ci #241

Workflow file for this run

name: Android Build
on:
push:
branches: ["*"]
paths-ignore:
- '.devcontainer/**'
- '.github/workflows/ios.yml'
- '.github/workflows/linux.yml'
- '.github/workflows/macos.yml'
- '.github/workflows/web.yml'
- '.github/workflows/windows.yml'
- 'ios/**'
- 'linux/**'
- 'macos/**'
- 'web/**'
- 'windows/**'
- '.gitignore'
- '.gitmodules'
- 'README.md'
- 'LICENSE'
jobs:
android:
runs-on: ubuntu-latest
steps:
- name: Check out
uses: actions/checkout@v4
- name: Setup flutter
uses: subosito/flutter-action@v2
with:
channel: stable
- name: set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'adopt'
cache: gradle
- name: Increase Gradle memory settings
run: |
echo "" >> android/gradle.properties
echo "org.gradle.jvmargs=-Xmx8192m -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8" >> android/gradle.properties
echo "android.enableR8=true" >> android/gradle.properties
- name: Clean workspace
run: flutter clean
- name: Decode Keystore
env:
ENCODED_STRING: ${{ secrets.SIGNING_STORE_BASE64 }}
run: echo $ENCODED_STRING | base64 -di > android/app/keystore.jks
- name: Build apk
run: flutter build apk --release --split-per-abi
env:
CI: true
SIGNING_KEY_ALIAS: release
SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }}
SIGNING_STORE_PASSWORD: ${{ secrets.SIGNING_STORE_PASSWORD }}
FLUTTER_BUILD_ARGS: "--extra-gen-snapshot-options=--vm-args=-Xmx8G"
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: app-release
path: build/app/outputs/flutter-apk/*