1
0
Fork 0
mirror of https://github.com/subosito/flutter-action.git synced 2024-08-16 10:19:50 +02:00
Find a file
2022-01-07 04:54:02 +00:00
.github/workflows add actions/cache support 2022-01-07 04:54:02 +00:00
action.yml rewrite flutter-action 2022-01-06 07:48:39 +00:00
LICENSE initial commit 2019-08-13 17:11:30 +07:00
README.md add actions/cache support 2022-01-07 04:54:02 +00:00
setup.sh add actions/cache support 2022-01-07 04:54:02 +00:00

flutter-action

Flutter environment for use in GitHub Actions. It works on Linux, Windows, and macOS.

Usage

Use specific version and channel:

steps:
- uses: actions/checkout@v2
- uses: subosito/flutter-action@v2
  with:
    flutter-version: '2.8.0'
    channel: 'stable'
- run: flutter --version

Use latest release for particular channel:

steps:
- uses: actions/checkout@v2
- uses: subosito/flutter-action@v2
  with:
    channel: 'stable' # or: 'beta', 'dev' or 'master'
- run: flutter --version

Use latest release for particular version and/or channel:

steps:
- uses: actions/checkout@v2
- uses: subosito/flutter-action@v2
  with:
    flutter-version: '1.22.x' # or, you can use 1.22
    channel: 'dev'
- run: flutter --version

Use particular version on any channel:

steps:
- uses: actions/checkout@v2
- uses: subosito/flutter-action@v2
  with:
    flutter-version: '2.x'
    channel: 'any'
- run: flutter --version

Build Android APK and app bundle:

steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
  with:
    distribution: 'zulu'
    java-version: '11'
- uses: subosito/flutter-action@v2
  with:
    flutter-version: '2.5.3'
- run: flutter pub get
- run: flutter test
- run: flutter build apk
- run: flutter build appbundle

Build for iOS (macOS only):

jobs:
  build:
    runs-on: macos-latest
    steps:
    - uses: actions/checkout@v2
    - uses: subosito/flutter-action@v2
      with:
        flutter-version: '2.5.3'
    - run: flutter pub get
    - run: flutter test
    - run: flutter build ios --release --no-codesign

Build for the web:

steps:
- uses: actions/checkout@v2
- uses: subosito/flutter-action@v2
  with:
    flutter-version: '2.5.3'
- run: flutter pub get
- run: flutter test
- run: flutter build web

Build for Windows:

jobs:
 build:
   runs-on: windows-latest
   steps:
     - uses: actions/checkout@v2
     - uses: subosito/flutter-action@v2
       with:
         channel: beta
     - run: flutter config --enable-windows-desktop
     - run: flutter build windows

Build for Linux desktop:

jobs:
 build:
   runs-on: ubuntu-latest
   steps:
     - uses: actions/checkout@v2
     - uses: subosito/flutter-action@v2
       with:
         channel: beta
     - run: |
        sudo apt-get update -y
        sudo apt-get install -y ninja-build libgtk-3-dev        
     - run: flutter config --enable-linux-desktop
     - run: flutter build linux

Build for macOS desktop:

jobs:
 build:
   runs-on: macos-latest
   steps:
     - uses: actions/checkout@v2
     - uses: subosito/flutter-action@v2
       with:
         channel: beta
     - run: flutter config --enable-macos-desktop
     - run: flutter build macos

Integration with actions/cache:

steps:
- uses: actions/checkout@v2
- uses: actions/cache@v2
  with:
    path: ${{ runner.tool_cache }}/flutter
    key: flutter-2.5.0-stable
- uses: subosito/flutter-action@v2
  with:
    channel: stable
    flutter-version: 2.5.0
- run: flutter --version