Flutter and Dart in your GitHub Actions. Use effortlessly in your project, inspire yourself with our Recipes.
Copy and paste the following snippet into your action's .yml file.
- name: Install Flutter
uses: monterail/flutter-action@v2With Flutter SDK for GitHub Actions you can do the following:
steps:
- uses: monterail/flutter-action@v2
- run: flutter build ...monterail/flutter-action@v1 provides sane defaults, assuming the default usage is to get the newest, production-ready, Flutter SDK. For more complex use-cases, customize the action with the non-standard inputs.
| Name | Description | Default |
|---|---|---|
channel |
Flutter channel | stable |
precache |
flutter precache arguments list, see recipe |
no-op |
List of practical applications of monterail/flutter-action@v1 for your project. Click the Details dropdown to see the implementation. Test the recipe by putting it into .github/workflows/action.yml file in your project's repository.
Will check (and annotate, if necessary) code quality and formatting guidelines set in analysis_options.yaml. Once code quality is checked, will run tests.
Details
name: Lint and Test PRs
on:
pull_request:
branches:
- main
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: monterail/flutter-action@v2
- run: flutter pub get
- uses: invertase/github-action-dart-analyzer@v3
with:
annotate: true
- run: dart format --set-exit-if-changed --output none
- run: flutter testLoad project's dependencies and build web app into a .zip file, stored as an artifact for the given commit.
Details
name: Build web app
on:
push:
branches:
- main
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: monterail/flutter-action@v2
- run: flutter pub get
- run: flutter build web
- uses: actions/upload-artifact@v4
with:
name: web-app
path: build/webBy default Flutter will fetch the tools necessary to build specific platforms after flutter build command is ran. The process can be sped up with precaching specific platforms at Flutter installation stage.
Details
name: Setup Flutter for web and Android builds
on:
push:
branches:
- main
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: monterail/flutter-action@v2
with:
precache: "--web --android"
- run: flutter pub get
- run: flutter build web
- uses: actions/upload-artifact@v4
with:
name: web-app
path: build/web