From bc85f7138fd424afe0254832290cac64084d02d7 Mon Sep 17 00:00:00 2001 From: Lukas Klingsbo Date: Fri, 23 Aug 2024 14:29:15 +0200 Subject: [PATCH] ci: Generate files and cache them --- .github/workflows/ci.yaml | 72 ++++++++++++++++++++++++++------------- .gitignore | 7 +++- 2 files changed, 55 insertions(+), 24 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 43b7e3946..8ad5cad92 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -8,46 +8,64 @@ on: workflow_dispatch: jobs: - analyze: + setup: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v3 - uses: Atsumi3/actions-setup-fvm@0.0.3 - uses: bluefireteam/melos-action@v2 - - run: melos analyze --fatal-infos + - run: melos generate + - uses: actions/cache@v3 + with: + path: | + .* + **/* + key: ${{ runner.os }}-repo-${{ github.sha }} - format: + analyze: runs-on: ubuntu-22.04 + needs: setup steps: - - uses: actions/checkout@v3 + - name: Restore repository cache + uses: actions/cache@v3 + with: + path: | + . + key: ${{ runner.os }}-repo-${{ github.sha }} + restore-keys: | + ${{ runner.os }}-repo- - uses: Atsumi3/actions-setup-fvm@0.0.3 - uses: bluefireteam/melos-action@v2 - - run: melos format:exclude + - run: melos analyze --fatal-infos - mocks: + format: runs-on: ubuntu-22.04 + needs: setup steps: - - uses: actions/checkout@v3 - - uses: Atsumi3/actions-setup-fvm@0.0.3 - - uses: bluefireteam/melos-action@v3 - - run: melos generate - - name: Check for outdated mocks - if: github.event_name != 'push' - run: ./scripts/check-outdated-files.sh - - name: Create PR - if: github.event_name == 'push' - uses: peter-evans/create-pull-request@v5 + - name: Restore repository cache + uses: actions/cache@v3 with: - add-paths: '**/*.mocks.dart' - title: 'chore: regenerate mocks' - commit-message: 'chore: regenerate mocks' - branch: create-pull-request/mocks - delete-branch: true + path: | + . + key: ${{ runner.os }}-repo-${{ github.sha }} + restore-keys: | + ${{ runner.os }}-repo- + - uses: Atsumi3/actions-setup-fvm@0.0.3 + - uses: bluefireteam/melos-action@v2 + - run: melos format:exclude l10n: runs-on: ubuntu-22.04 + needs: setup steps: - - uses: actions/checkout@v3 + - name: Restore repository cache + uses: actions/cache@v3 + with: + path: | + . + key: ${{ runner.os }}-repo-${{ github.sha }} + restore-keys: | + ${{ runner.os }}-repo- - uses: Atsumi3/actions-setup-fvm@0.0.3 - uses: bluefireteam/melos-action@v2 - run: melos gen-l10n @@ -66,8 +84,16 @@ jobs: test: runs-on: ubuntu-22.04 + needs: setup steps: - - uses: actions/checkout@v3 + - name: Restore repository cache + uses: actions/cache@v3 + with: + path: | + . + key: ${{ runner.os }}-repo-${{ github.sha }} + restore-keys: | + ${{ runner.os }}-repo- - uses: Atsumi3/actions-setup-fvm@0.0.3 - uses: bluefireteam/melos-action@v2 - run: sudo apt update && sudo apt install -y lcov diff --git a/.gitignore b/.gitignore index 8f125c67a..b5739ece7 100644 --- a/.gitignore +++ b/.gitignore @@ -51,4 +51,9 @@ app.*.map.json **/pubspec_overrides.yaml # FVM Version Cache -.fvm/ \ No newline at end of file +.fvm/ + +# Generated files +**/*.freezed.dart +**/*.g.dart +**/*.mocks.dart