Skip to content

Build & Lint

Build & Lint #2159

Workflow file for this run

name: Build & Lint
on:
pull_request:
push:
branches: [main]
schedule:
- cron: 0 4 * * *
workflow_dispatch:
env:
JAVA_VERSION: 12.x
jobs:
test:
name: Run tests
runs-on: ubuntu-latest
strategy:
matrix:
flutter-channel: [stable, beta]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: zulu
java-version: ${{ env.JAVA_VERSION }}
- uses: subosito/flutter-action@v2
with:
channel: ${{ matrix.flutter-channel }}
- run: flutter pub get
- run: flutter test
lint:
name: Lint
runs-on: ubuntu-latest
strategy:
matrix:
flutter-channel: [stable, beta]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: zulu
java-version: ${{ env.JAVA_VERSION }}
- uses: subosito/flutter-action@v2
with:
channel: ${{ matrix.flutter-channel }}
- run: flutter pub get
- run: flutter analyze
build-example:
name: Build example
runs-on: ubuntu-latest
strategy:
matrix:
flutter-channel: [stable, beta]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: zulu
java-version: ${{ env.JAVA_VERSION }}
- uses: subosito/flutter-action@v2
with:
channel: ${{ matrix.flutter-channel }}
- run: flutter pub get
working-directory: example
- run: flutter build apk
working-directory: example
- name: Upload APK as artifact
uses: actions/upload-artifact@v4
with:
name: example-apk-flutter-${{ matrix.flutter-channel }}
path: example/build/app/outputs/apk/release/app-release.apk