diff --git a/.github/workflows/code-coverage.yml b/.github/workflows/code-coverage.yml index b5499a7f..d1582896 100644 --- a/.github/workflows/code-coverage.yml +++ b/.github/workflows/code-coverage.yml @@ -10,7 +10,7 @@ env: jobs: test_with_coverage: - name: ๐Ÿงช Run Flutter Unit Tests with Coverage + name: ๐Ÿงช Unit Tests runs-on: ubuntu-latest timeout-minutes: 20 defaults: diff --git a/.github/workflows/code-integration.yml b/.github/workflows/code-integration.yml index 1cc310fc..c9fe5928 100644 --- a/.github/workflows/code-integration.yml +++ b/.github/workflows/code-integration.yml @@ -1,4 +1,4 @@ -name: ๐Ÿค–๐Ÿ“ฑ Code Integration +name: ๐Ÿค–๐Ÿ“ฑ Code Integration Tests on: push: @@ -15,7 +15,7 @@ defaults: jobs: # Android Integration Tests integration_tests_android: - name: ๐Ÿค– Android Integration Tests + name: ๐Ÿค– Android runs-on: ubuntu-latest timeout-minutes: 30 steps: @@ -43,7 +43,7 @@ jobs: # iOS Integration Tests integration_tests_ios: - name: ๐Ÿ iOS Integration Tests + name: ๐Ÿ iOS runs-on: macos-latest timeout-minutes: 30 steps: diff --git a/.github/workflows/code-quality.yml b/.github/workflows/code-quality.yml index d6730224..4cb11d43 100644 --- a/.github/workflows/code-quality.yml +++ b/.github/workflows/code-quality.yml @@ -13,27 +13,23 @@ env: PUB_ENVIRONMENT: bot.github jobs: - analysis_and_formatting: - name: ๐Ÿ“ Code Analysis & Formatting + analysis: + name: ๐Ÿ” Analysis runs-on: ubuntu-latest steps: - # Checkout the code - name: ๐Ÿ“ฅ Checkout Code uses: actions/checkout@v4 - # Set up Flutter - name: โšก Set Up Flutter uses: subosito/flutter-action@v2 with: channel: stable - cache: true # Enable Flutter SDK caching + cache: true - # Verify Flutter version - name: ๐Ÿ” Flutter Version Info run: flutter doctor -v - # Cache Pub dependencies - name: ๐Ÿ“ฆ Cache Pub Dependencies uses: actions/cache@v3 with: @@ -44,20 +40,39 @@ jobs: restore-keys: | ${{ runner.os }}-pub- - # Install Melos - name: ๐Ÿš€ Install Melos run: | flutter pub global activate melos echo "$HOME/.pub-cache/bin" >> $GITHUB_PATH - # Bootstrap workspace - name: ๐Ÿ”ง Bootstrap Workspace with Melos run: melos bootstrap - # Run Linter - name: โœ… Lint Code run: melos analyze - # Check Code Formatting + formatting: + name: ๐ŸŽจ Formatting + needs: analysis # This makes formatting start after analysis is complete + runs-on: ubuntu-latest + + steps: + - name: ๐Ÿ“ฅ Checkout Code + uses: actions/checkout@v4 + + - name: โšก Set Up Flutter + uses: subosito/flutter-action@v2 + with: + channel: stable + cache: true + + - name: ๐Ÿš€ Install Melos + run: | + flutter pub global activate melos + echo "$HOME/.pub-cache/bin" >> $GITHUB_PATH + + - name: ๐Ÿ”ง Bootstrap Workspace with Melos + run: melos bootstrap + - name: ๐ŸŽฏ Check Code Formatting run: melos format --output none --set-exit-if-changed