name: android

# build on c/cpp changes or workflow changes
on:
  push:
    paths:
      - 'lib/**.[ch]'
      - 'lib/**.cpp'
      - 'src/**.[ch]'
      - 'src/**.cpp'
      - 'android/**'
      - '.github/workflows/android.yml'
  pull_request:
    paths:
      - 'lib/**.[ch]'
      - 'lib/**.cpp'
      - 'src/**.[ch]'
      - 'src/**.cpp'
      - 'android/**'
      - '.github/workflows/android.yml'

jobs:
  build:
    runs-on: ubuntu-20.04
    steps:
    - uses: actions/checkout@v3
    - name: Install deps
      run: |
        sudo apt-get update
        sudo apt-get install -y --no-install-recommends gettext openjdk-11-jdk-headless
    - name: Build with Gradle
      run: cd android; ./gradlew assemblerelease
    - name: Save armeabi artifact
      uses: actions/upload-artifact@v3
      with:
        name: Minetest-armeabi-v7a.apk
        path: android/app/build/outputs/apk/release/app-armeabi-v7a-release-unsigned.apk
    - name: Save arm64 artifact
      uses: actions/upload-artifact@v3
      with:
        name: Minetest-arm64-v8a.apk
        path: android/app/build/outputs/apk/release/app-arm64-v8a-release-unsigned.apk
    - name: Save x86 artifact
      uses: actions/upload-artifact@v3
      with:
        name: Minetest-x86.apk
        path: android/app/build/outputs/apk/release/app-x86-release-unsigned.apk
    - name: Save x86_64 artifact
      uses: actions/upload-artifact@v3
      with:
        name: Minetest-x86_64.apk
        path: android/app/build/outputs/apk/release/app-x86_64-release-unsigned.apk
