Skip to content

simplify android build #2

simplify android build

simplify android build #2

Workflow file for this run

name: Build Android
on:
push:
branches:
- main
- dev
jobs:
setup-build:
runs-on: ubuntu-latest
outputs:
flutter-sdk-path: ${{ steps.flutter-setup.outputs.flutter-path }}
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up JDK 17
uses: actions/setup-java@v2
with:
java-version: '17'
distribution: 'adopt'
- name: Setup Flutter
id: flutter-setup
uses: subosito/flutter-action@v2
with:
flutter-version: '3.19.5'
- name: Decode Keystore File
env:
KEYSTORE: ${{ secrets.KEYSTORE }}
run: echo "$KEYSTORE" | base64 --decode > android/app/key.jks
- name: Create key.properties
run: |
echo "storeFile=key.jks" > android/key.properties
echo "storePassword=${{ secrets.STORE_PASSWORD }}" >> android/key.properties
echo "keyPassword=${{ secrets.KEY_PASSWORD }}" >> android/key.properties
echo "releasePassword=${{ secrets.KEY_PASSWORD }}" >> android/key.properties
echo "keyAlias=${{ secrets.KEY_ALIAS }}" >> android/key.properties
echo "releaseAlias=${{ secrets.KEY_ALIAS }}" >> android/key.properties
build-apk:
needs: setup-build
runs-on: ubuntu-latest
steps:
- name: Checkout Setup Outputs
uses: actions/checkout@v2
- name: Build APK
run: |
flutter config --no-analytics
flutter pub get
flutter build apk --split-per-abi
env:
PATH: ${{ needs.setup-build.outputs.flutter-sdk-path }}:$PATH
- name: Upload APK
uses: actions/upload-artifact@v4
with:
name: maid-android-apk
path: build/app/outputs/apk/release
build-aab:
needs: setup-build
runs-on: ubuntu-latest
steps:
- name: Checkout Setup Outputs
uses: actions/checkout@v2
- name: Build appbundle
run: |
flutter config --no-analytics
flutter pub get
flutter build appbundle
env:
PATH: ${{ needs.setup-build.outputs.flutter-sdk-path }}:$PATH
- name: Upload AAB
uses: actions/upload-artifact@v4
with:
name: maid-android-aab
path: build/app/outputs/bundle/release/app-release.aab