build(deps): bump the androidx group across 1 directory with 17 updates #55
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Pull Request | |
| on: | |
| pull_request: | |
| branches: [ main ] | |
| types: [ opened, edited, synchronize, reopened ] | |
| concurrency: | |
| group: pr-${{ github.event.pull_request.number }} | |
| cancel-in-progress: true | |
| jobs: | |
| pr-title: | |
| name: PR Title (Conventional Commits) | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| permissions: | |
| pull-requests: read | |
| steps: | |
| - uses: amannn/action-semantic-pull-request@v6 | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| with: | |
| # Types must match cliff.toml commit_parsers so every merged title | |
| # maps to a changelog group. | |
| types: | | |
| feat | |
| fix | |
| perf | |
| refactor | |
| docs | |
| test | |
| chore | |
| ci | |
| build | |
| revert | |
| requireScope: false | |
| subjectPattern: ^.+$ | |
| subjectPatternError: | | |
| PR title must have a non-empty description after the type/scope. | |
| Example: "feat(feature:home): add category filter" | |
| lint: | |
| name: Android Lint | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| permissions: | |
| contents: read | |
| security-events: write | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: ./.github/actions/setup-android | |
| - name: Run Lint | |
| run: ./gradlew lintDebug | |
| - name: Upload Lint SARIF | |
| if: always() && github.actor != 'dependabot[bot]' | |
| uses: github/codeql-action/upload-sarif@v4 | |
| with: | |
| sarif_file: app/build/reports/lint-results-debug.sarif | |
| category: lint | |
| - name: Upload Lint reports | |
| if: always() | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: lint-reports | |
| path: '**/build/reports/lint-results-*.html' | |
| if-no-files-found: ignore | |
| detekt: | |
| name: Detekt | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| permissions: | |
| contents: read | |
| security-events: write | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: ./.github/actions/setup-android | |
| - name: Run Detekt | |
| run: ./gradlew detekt | |
| - name: Upload Detekt SARIF | |
| if: always() && github.actor != 'dependabot[bot]' | |
| uses: github/codeql-action/upload-sarif@v4 | |
| with: | |
| sarif_file: app/build/reports/detekt/detekt.sarif | |
| category: detekt | |
| - name: Upload Detekt reports | |
| if: always() | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: detekt-reports | |
| path: '**/build/reports/detekt/' | |
| if-no-files-found: ignore | |
| unit-tests: | |
| name: Unit Tests & Konsist | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| permissions: | |
| contents: read | |
| checks: write | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: ./.github/actions/setup-android | |
| - uses: ./.github/actions/run-unit-tests | |
| with: | |
| gradle-task: testDebugUnitTest | |
| screenshot-tests: | |
| name: Screenshot Tests | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: ./.github/actions/setup-android | |
| - uses: ./.github/actions/run-screenshot-tests | |
| with: | |
| gradle-task: verifyRoborazziDebug | |
| instrumentation-tests: | |
| name: Instrumentation Tests | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| permissions: | |
| contents: read | |
| checks: write | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: ./.github/actions/setup-android | |
| - uses: ./.github/actions/run-instrumentation-tests | |
| with: | |
| gradle-task: :app:connectedDebugAndroidTest | |
| api-level: ${{ vars.EMULATOR_API_LEVEL }} | |
| upload-results: 'true' | |
| artifact-name: instrumentation-test-results-pr-${{ github.event.pull_request.number }} | |
| summary: | |
| name: PR Summary | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| needs: [pr-title, lint, detekt, unit-tests, screenshot-tests, instrumentation-tests] | |
| if: always() | |
| steps: | |
| - name: Write workflow summary | |
| run: | | |
| echo "## Pull Request Check Results" >> $GITHUB_STEP_SUMMARY | |
| echo "" >> $GITHUB_STEP_SUMMARY | |
| echo "| Check | Result |" >> $GITHUB_STEP_SUMMARY | |
| echo "|-------|--------|" >> $GITHUB_STEP_SUMMARY | |
| echo "| 📝 PR Title | ${{ needs.pr-title.result == 'success' && '✅ Passed' || needs.pr-title.result == 'skipped' && '⏭️ Skipped' || '❌ Failed' }} |" >> $GITHUB_STEP_SUMMARY | |
| echo "| 🔍 Android Lint | ${{ needs.lint.result == 'success' && '✅ Passed' || needs.lint.result == 'skipped' && '⏭️ Skipped' || '❌ Failed' }} |" >> $GITHUB_STEP_SUMMARY | |
| echo "| 🧹 Detekt | ${{ needs.detekt.result == 'success' && '✅ Passed' || needs.detekt.result == 'skipped' && '⏭️ Skipped' || '❌ Failed' }} |" >> $GITHUB_STEP_SUMMARY | |
| echo "| 🧪 Unit Tests & Konsist | ${{ needs.unit-tests.result == 'success' && '✅ Passed' || needs.unit-tests.result == 'skipped' && '⏭️ Skipped' || '❌ Failed' }} |" >> $GITHUB_STEP_SUMMARY | |
| echo "| 📸 Screenshot Tests | ${{ needs.screenshot-tests.result == 'success' && '✅ Passed' || needs.screenshot-tests.result == 'skipped' && '⏭️ Skipped' || '❌ Failed' }} |" >> $GITHUB_STEP_SUMMARY | |
| echo "| 📱 Instrumentation Tests | ${{ needs.instrumentation-tests.result == 'success' && '✅ Passed' || needs.instrumentation-tests.result == 'skipped' && '⏭️ Skipped' || '❌ Failed' }} |" >> $GITHUB_STEP_SUMMARY | |
| echo "" >> $GITHUB_STEP_SUMMARY | |
| if [[ "${{ needs.pr-title.result }}" != "success" || "${{ needs.lint.result }}" != "success" || "${{ needs.detekt.result }}" != "success" || "${{ needs.unit-tests.result }}" != "success" || "${{ needs.screenshot-tests.result }}" != "success" || "${{ needs.instrumentation-tests.result }}" != "success" ]]; then | |
| echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY | |
| echo "> One or more checks failed. Download the artifacts above for details." >> $GITHUB_STEP_SUMMARY | |
| else | |
| echo "> [!NOTE]" >> $GITHUB_STEP_SUMMARY | |
| echo "> All checks passed. This PR is ready for review." >> $GITHUB_STEP_SUMMARY | |
| fi |