mirror of
https://github.com/HendrikRauh/inventree-app.git
synced 2026-02-04 07:43:18 +00:00
85 lines
2.5 KiB
YAML
85 lines
2.5 KiB
YAML
# Build Android version of the app
|
|
|
|
name: Android
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
ENABLE_NIX_STORE_CACHE: 'true' # set to 'true' to test caching the whole /nix/store (risky)
|
|
USE_CACHIX: 'false' # set to 'true' to enable Cachix step
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v6
|
|
|
|
- name: Cache Nix local cache (~/.cache/nix)
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: ${{ env.HOME }}/.cache/nix
|
|
key: ${{ runner.os }}-nix-local-${{ hashFiles('flake.lock','flake.nix') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-nix-local-
|
|
|
|
- name: (Optional) Cache entire /nix/store (experimental, very large)
|
|
if: env.ENABLE_NIX_STORE_CACHE == 'true'
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: /nix/store/
|
|
key: ${{ runner.os }}-nix-store-${{ hashFiles('flake.lock','flake.nix') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-nix-store-
|
|
|
|
- name: (Optional) Setup Cachix (use binary cache)
|
|
if: env.USE_CACHIX == 'true'
|
|
uses: cachix/cachix-action@v14
|
|
with:
|
|
name: inventree
|
|
|
|
- name: Cache Flutter Pub
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: ${{ env.HOME }}/.pub-cache
|
|
key: ${{ runner.os }}-pub-${{ hashFiles('pubspec.lock','pubspec.yaml') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-pub-
|
|
|
|
- name: Cache Gradle
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: |
|
|
${{ env.HOME }}/.gradle/caches
|
|
${{ env.HOME }}/.gradle/wrapper
|
|
android/.gradle
|
|
key: ${{ runner.os }}-gradle-${{ hashFiles('**/build.gradle*','android/gradle.properties','android/gradle/wrapper/gradle-wrapper.properties') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-gradle-
|
|
|
|
- name: Prepare Nix devshell
|
|
uses: ./.github/actions/nix-devshell
|
|
with:
|
|
prebuild: "true"
|
|
|
|
- name: Collect Translation Files
|
|
uses: ./.github/actions/nix-devshell
|
|
with:
|
|
commands: |
|
|
cd lib/l10n
|
|
python3 collect_translations.py
|
|
|
|
- name: Build Debug APK
|
|
uses: ./.github/actions/nix-devshell
|
|
with:
|
|
commands: |
|
|
flutter build apk --debug --target-platform android-arm64
|
|
|
|
- name: Upload APK artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: app-debug-apk
|
|
path: build/app/outputs/flutter-apk/*.apk
|
|
# retention-days: 90
|