Skip to content

build(deps): bump VeryGoodOpenSource/very_good_coverage from 2.1.0 to 2.2.0 #699

build(deps): bump VeryGoodOpenSource/very_good_coverage from 2.1.0 to 2.2.0

build(deps): bump VeryGoodOpenSource/very_good_coverage from 2.1.0 to 2.2.0 #699

Workflow file for this run

---
name: Dart
on:
push:
branches:
- main
pull_request:
branches:
- main
types:
- opened
- synchronize
- reopened
merge_group:
schedule:
- cron: "0 14 * * 1" # every monday at 9 in the morning CST
workflow_dispatch:
env:
CI: true
permissions:
contents: read
jobs:
setup:
name: Setup
needs: []
timeout-minutes: 5
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
flutter:
- stable
steps:
- name: 📚 Git checkout
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
submodules: recursive
clean: true
persist-credentials: false
set-safe-directory: true
- name: 🐦 Set up Flutter
uses: subosito/flutter-action@2783a3f08e1baf891508463f8c6653c258246225 # v2.12.0
with:
channel: "stable"
cache: true
- name: 🌐 Disable analytics
run: flutter --disable-analytics
- name: 📦 Install dependencies
run: flutter pub get
- name: ⚙️ Cache generated files
uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3.3.2
with:
path: |
.dart_tool/
lib/gen/*.gen.dart
lib/**/*.g.dart
lib/**/*.gr.dart
lib/**/*.gm.dart
lib/**/*.freezed.dart
lib/l10n/app_localizations.dart
lib/l10n/app_localizations_*.dart
lib/widgetbook.generator.*.dart
key: ${{ runner.os }}-${{ matrix.flutter }}-dart-${{ hashFiles('**/build.yaml') }}
- name: 🔌 Generate files
run: |
flutter gen-l10n
dart run dart_define generate
dart run build_runner build -d
- name: ⚙️ Upload generated files
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
with:
name: generated-files
path: |
lib/gen/*.gen.dart
lib/**/*.g.dart
lib/**/*.gr.dart
lib/**/*.gm.dart
lib/**/*.freezed.dart
lib/l10n/app_localizations.dart
lib/l10n/app_localizations_*.dart
lib/widgetbook.generator.*.dart
if-no-files-found: error
build:
name: Build
needs: ["setup"]
timeout-minutes: ${{ (matrix.target == 'web') && 5 || 10 }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
flutter:
- stable
target:
- web
- appbundle
# - ios
# - macos
# - windows
include:
- target: web
os: ubuntu-latest
flutter-flags: --release
- target: appbundle
os: ubuntu-latest
flutter-flags: --debug --no-tree-shake-icons --no-shrink
# - target: ios
# os: macos-latest
# flutter-flags: --debug --no-tree-shake-icons
# - target: macos
# os: macos-latest
# flutter-flags: --debug --no-tree-shake-icons
# - target: windows
# os: windows-latest
# flutter-flags: --debug --no-tree-shake-icons
steps:
- name: 📚 Git checkout
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
submodules: recursive
clean: true
persist-credentials: false
set-safe-directory: true
- name: 🐦 Set up Flutter
uses: subosito/flutter-action@2783a3f08e1baf891508463f8c6653c258246225 # v2.12.0
with:
channel: ${{ matrix.flutter }}
cache: true
- name: 🌐 Disable analytics
run: flutter --disable-analytics
- name: 📦 Install dependencies
run: flutter pub get
- name: ⚙️ Download generated code
uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3.0.2
with:
name: generated-files
path: lib
- name: 🔌 Generate dart-defines
run: dart run dart_define generate
- name: 🔧 Build
run: |
flutter build ${{ matrix.target }} ${{ matrix.flutter-flags }} --dart-define-from-file=dart_define.json
# - name: ⚙️ Upload build
# if: matrix.target == 'web'
# uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3
# with:
# name: build-directory-${{ matrix.target }}-${{ matrix.flutter}}
# path: ./build
# if-no-files-found: error
lint:
name: Linting
needs: ["setup"]
timeout-minutes: 5
runs-on: ubuntu-latest
strategy:
matrix:
flutter: ["stable"]
steps:
- name: 📚 Git checkout
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
submodules: recursive
clean: true
persist-credentials: false
set-safe-directory: true
- name: 🐦 Set up Flutter
uses: subosito/flutter-action@2783a3f08e1baf891508463f8c6653c258246225 # v2.12.0
with:
channel: ${{ matrix.flutter }}
cache: true
- name: 🌐 Disable analytics
run: flutter --disable-analytics
- name: 📦 Install dependencies
run: flutter pub get
- name: ⚙️ Download generated code
uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3.0.2
with:
name: generated-files
path: lib
- name: 🔌 Generate dart-defines
run: dart run dart_define generate
- name: 🕵️ Analyze project source
run: flutter analyze --fatal-infos
- name: 🕵️ Lint Riverpod
run: dart run custom_lint
test:
name: Testing
needs: ["setup"]
timeout-minutes: 7
runs-on: ubuntu-latest
strategy:
matrix:
flutter: ["stable"]
steps:
- name: 📚 Git checkout
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
submodules: recursive
clean: true
persist-credentials: false
set-safe-directory: true
- name: 🐦 Set up Flutter
uses: subosito/flutter-action@2783a3f08e1baf891508463f8c6653c258246225 # v2.12.0
with:
channel: ${{ matrix.flutter }}
cache: true
- name: 🌐 Disable analytics
run: flutter --disable-analytics
- name: 📦 Install dependencies
run: flutter pub get
- name: ⚙️ Download generated code
uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3.0.2
with:
name: generated-files
path: lib
- name: 🔌 Generate dart-defines
run: dart run dart_define generate
- name: 🧪 Run tests
run: dart run very_good_cli:very_good test --coverage --test-randomize-ordering-seed random
- name: 📊 Check code coverage
uses: VeryGoodOpenSource/very_good_coverage@3b475421464c564c0714d92ce02742bd81fa9eda # v2.2.0
with:
path: coverage/lcov.info
min_coverage: 10 # 100
format:
name: Formatting
needs: ["setup"]
timeout-minutes: 3
runs-on: ubuntu-latest
strategy:
matrix:
flutter: ["stable"]
steps:
- name: 📚 Git checkout
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
submodules: recursive
clean: true
persist-credentials: false
set-safe-directory: true
- name: 🐦 Set up Flutter
uses: subosito/flutter-action@2783a3f08e1baf891508463f8c6653c258246225 # v2.12.0
with:
channel: ${{ matrix.flutter }}
cache: true
- name: 🌐 Disable analytics
run: flutter --disable-analytics
- name: ✨ Verify formatting
run: dart format --output=none --set-exit-if-changed .