# Build Android version of the app

name: Android

on:
  pull_request:
    branches:
      - master
  push:
    branches:
      - master
  
jobs:

  build:
    runs-on: macos-latest
  
    steps:
    - name: Checkout code
      uses: actions/checkout@v3

    - name: Setup Java
      uses: actions/setup-java@v3
      with:
        distribution: 'temurin'
        java-version: '17'

    - name: Setup FVM
      id: fvm-config-action
      uses: kuhnroyal/flutter-fvm-config-action@v2

    - uses: subosito/flutter-action@v2
      with:
        flutter-version: ${{ steps.fvm-config-action.outputs.FLUTTER_VERSION }}
        channel: ${{ steps.fvm-config-action.outputs.FLUTTER_CHANNEL }}
        cache: false
        cache-key: "flutter-:os:-:channel:-:version:-:arch:-:hash:"
        cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:"
        pub-cache-key: "flutter-pub:os:-:channel:-:version:-:arch:-:hash:"
        pub-cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:"

    - run: flutter --version

    - name: Setup Gradle
      uses: gradle/gradle-build-action@v2.4.2
      with:
        gradle-version: 8.7

    - name: Collect Translation Files
      run: |
        cd lib/l10n
        python3 collect_translations.py

    - name: Build for Android
      run: |
        dart pub global activate fvm
        fvm install
        fvm flutter pub get
        fvm flutter build apk --debug
