1
0
Fork 0
mirror of https://github.com/subosito/flutter-action.git synced 2024-08-16 10:19:50 +02:00
flutter/action.yaml

112 lines
3.6 KiB
YAML
Raw Normal View History

2024-03-31 19:15:36 +02:00
name: Set up Flutter
description: Setup your runner with Flutter environment
author: Alif Rachmawadi
2022-01-06 08:40:25 +01:00
branding:
2024-03-31 19:15:36 +02:00
icon: maximize
color: blue
2024-03-31 22:15:17 +02:00
2019-08-13 12:11:30 +02:00
inputs:
2019-08-16 14:14:55 +02:00
flutter-version:
2024-03-31 19:15:36 +02:00
description: The Flutter version to make available on the path
2019-08-16 13:30:45 +02:00
required: false
2024-03-31 19:15:36 +02:00
default: any
2019-08-13 12:11:30 +02:00
channel:
2024-03-31 19:15:36 +02:00
description: The Flutter build release channel
2019-08-13 12:11:30 +02:00
required: false
2024-03-31 19:15:36 +02:00
default: stable
2022-01-08 15:55:41 +01:00
cache:
2024-03-31 19:15:36 +02:00
description: Cache the Flutter SDK
2022-01-08 15:55:41 +01:00
required: false
2024-03-31 19:15:36 +02:00
default: "false"
2022-01-08 15:55:41 +01:00
cache-key:
2024-03-31 19:15:36 +02:00
description: Identifier for the Flutter SDK cache
2022-01-08 15:55:41 +01:00
required: false
2024-03-31 19:15:36 +02:00
default: "flutter-:os:-:channel:-:version:-:arch:-:hash:"
pub-cache-key:
2024-03-31 19:15:36 +02:00
description: Identifier for the Dart .pub-cache cache
required: false
2024-03-31 19:15:36 +02:00
default: "flutter-pub:os:-:channel:-:version:-:arch:-:hash:"
2022-01-13 11:10:55 +01:00
cache-path:
2024-03-31 19:15:36 +02:00
description: Flutter SDK cache path
2022-01-13 11:10:55 +01:00
required: false
2024-03-31 19:15:36 +02:00
default: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:"
2024-03-20 05:20:53 +01:00
pub-cache-path:
2024-03-31 19:15:36 +02:00
description: Flutter pub cache path
2024-03-20 05:20:53 +01:00
required: false
2024-03-31 19:15:36 +02:00
default: default
architecture:
2024-03-31 19:15:36 +02:00
description: The architecture of Flutter SDK executable (x64 or arm64)
required: false
2024-03-31 19:15:36 +02:00
default: "${{ runner.arch }}"
2024-03-31 22:15:17 +02:00
2022-09-08 03:41:22 +02:00
outputs:
CACHE-KEY:
2024-03-31 19:15:36 +02:00
value: "${{ steps.flutter-action.outputs.CACHE-KEY }}"
2024-03-31 19:21:19 +02:00
description: Key used to cache the Flutter SDK
CACHE-PATH:
value: "${{ steps.flutter-action.outputs.CACHE-PATH }}"
description: Path to Flutter SDK
CHANNEL:
2024-03-31 19:15:36 +02:00
value: "${{ steps.flutter-action.outputs.CHANNEL }}"
2024-03-31 19:21:19 +02:00
description: The selected Flutter release channel
VERSION:
2024-03-31 19:15:36 +02:00
value: "${{ steps.flutter-action.outputs.VERSION }}"
2024-03-31 19:21:19 +02:00
description: The selected Flutter version
ARCHITECTURE:
2024-03-31 19:15:36 +02:00
value: "${{ steps.flutter-action.outputs.ARCHITECTURE }}"
2024-03-31 19:21:19 +02:00
description: The selected Flutter CPU architecture
PUB-CACHE-KEY:
2024-03-31 19:15:36 +02:00
value: "${{ steps.flutter-action.outputs.PUB-CACHE-KEY }}"
2024-03-31 19:21:19 +02:00
description: Key used to cache the pub dependencies
PUB-CACHE-PATH:
2024-03-31 19:15:36 +02:00
value: "${{ steps.flutter-action.outputs.PUB-CACHE-PATH }}"
2024-03-31 19:21:19 +02:00
description: Path to pub cache
2024-03-31 22:15:17 +02:00
2019-08-13 12:11:30 +02:00
runs:
2024-03-31 19:15:36 +02:00
using: composite
2022-01-06 08:40:25 +01:00
steps:
2024-03-31 19:21:19 +02:00
- name: Make setup script executable
run: chmod +x "$GITHUB_ACTION_PATH/setup.sh"
2023-11-01 11:59:30 +01:00
shell: bash
2024-03-31 22:15:17 +02:00
- name: Set action inputs
2024-03-31 19:21:19 +02:00
id: flutter-action
2022-07-24 14:19:31 +02:00
shell: bash
2024-03-31 22:15:17 +02:00
run: |
$GITHUB_ACTION_PATH/setup.sh -p \
-c '${{ inputs.cache-path }}' \
-k '${{ inputs.cache-key }}' \
-d '${{ inputs.pub-cache-path }}' \
-l '${{ inputs.pub-cache-key }}' \
-n '${{ inputs.flutter-version }}' \
-a '${{ inputs.architecture }}' \
${{ inputs.channel }}
2024-03-31 19:21:19 +02:00
- name: Cache Flutter
uses: actions/cache@v4
2024-03-31 22:15:17 +02:00
if: ${{ inputs.cache == 'true' }}
2022-01-08 15:55:41 +01:00
with:
path: ${{ steps.flutter-action.outputs.CACHE-PATH }}
key: ${{ steps.flutter-action.outputs.CACHE-KEY }}
2023-03-21 16:20:05 +01:00
restore-keys: |
${{ steps.flutter-action.outputs.CACHE-KEY }}
2024-03-31 22:15:17 +02:00
2024-03-31 19:21:19 +02:00
- name: Cache pub dependencies
uses: actions/cache@v4
2024-03-31 22:15:17 +02:00
if: ${{ inputs.cache == 'true' }}
with:
path: ${{ steps.flutter-action.outputs.PUB-CACHE-PATH }}
key: ${{ steps.flutter-action.outputs.PUB-CACHE-KEY }}-${{ hashFiles('**/pubspec.lock') }}
restore-keys: |
${{ steps.flutter-action.outputs.PUB-CACHE-KEY }}-${{ hashFiles('**/pubspec.lock') }}
${{ steps.flutter-action.outputs.PUB-CACHE-KEY }}
2024-03-31 22:15:17 +02:00
- name: Run setup script
2022-01-06 08:40:25 +01:00
shell: bash
2024-03-31 22:15:17 +02:00
run: |
$GITHUB_ACTION_PATH/setup.sh \
-c '${{ steps.flutter-action.outputs.CACHE-PATH }}' \
-n '${{ steps.flutter-action.outputs.VERSION }}' \
-a '${{ steps.flutter-action.outputs.ARCHITECTURE }}' \
${{ steps.flutter-action.outputs.CHANNEL }}