mirror of https://github.com/flutter/pinball.git
parent
75a5cf7537
commit
5dc105c7be
@ -0,0 +1,74 @@
|
|||||||
|
name: Flutter Package Workflow
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_call:
|
||||||
|
inputs:
|
||||||
|
coverage_excludes:
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
flutter_channel:
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
default: "stable"
|
||||||
|
flutter_version:
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
default: ""
|
||||||
|
working_directory:
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
default: "."
|
||||||
|
min_coverage:
|
||||||
|
required: false
|
||||||
|
type: number
|
||||||
|
default: 100
|
||||||
|
test_optimization:
|
||||||
|
required: false
|
||||||
|
type: boolean
|
||||||
|
default: true
|
||||||
|
test_recursion:
|
||||||
|
required: false
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
defaults:
|
||||||
|
run:
|
||||||
|
working-directory: ${{inputs.working_directory}}
|
||||||
|
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: 📚 Git Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: 🐦 Setup Flutter
|
||||||
|
uses: subosito/flutter-action@v2
|
||||||
|
with:
|
||||||
|
flutter-version: ${{inputs.flutter_version}}
|
||||||
|
channel: ${{inputs.flutter_channel}}
|
||||||
|
cache: true
|
||||||
|
|
||||||
|
- name: 📦 Install Dependencies
|
||||||
|
run: |
|
||||||
|
flutter pub global activate very_good_cli
|
||||||
|
very_good --analytics false
|
||||||
|
very_good packages get --recursive
|
||||||
|
|
||||||
|
- name: ✨ Check Formatting
|
||||||
|
run: flutter format --set-exit-if-changed lib test
|
||||||
|
|
||||||
|
- name: 🕵️ Analyze
|
||||||
|
run: flutter analyze lib test
|
||||||
|
|
||||||
|
- name: 🧪 Run Tests
|
||||||
|
run: very_good test ${{(inputs.test_recursion && '--recursive') || ''}} ${{(inputs.test_optimization && '--optimization') || '--no-optimization'}} --coverage --test-randomize-ordering-seed random
|
||||||
|
|
||||||
|
- name: 📊 Check Code Coverage
|
||||||
|
uses: VeryGoodOpenSource/very_good_coverage@v1
|
||||||
|
with:
|
||||||
|
path: ${{inputs.working_directory}}/coverage/lcov.info
|
||||||
|
exclude: ${{inputs.coverage_excludes}}
|
||||||
|
min_coverage: ${{inputs.min_coverage}}
|
Loading…
Reference in new issue