chore(ci): Refactor and optimize GitHub Actions workflows (#4252)

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
This commit is contained in:
James Rich 2026-01-17 19:52:04 -06:00 committed by GitHub
parent d9bc79b396
commit cf48d6c1c1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 144 additions and 59 deletions

View file

@ -9,7 +9,14 @@ concurrency:
cancel-in-progress: true
jobs:
build_and_detekt:
lint:
if: github.repository == 'meshtastic/Meshtastic-Android'
uses: ./.github/workflows/reusable-lint.yml
secrets:
GRADLE_ENCRYPTION_KEY: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
build:
needs: lint
if: github.repository == 'meshtastic/Meshtastic-Android'
uses: ./.github/workflows/reusable-android-build.yml
with:
@ -21,10 +28,12 @@ jobs:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
androidTest:
needs: lint
if: github.repository == 'meshtastic/Meshtastic-Android'
uses: ./.github/workflows/reusable-android-test.yml
with:
api_levels: '[26, 35]' # Run on both API 26 and 35 for merge queue
test_flavors: 'both' # Run both flavors for merge queue (comprehensive)
upload_artifacts: false
secrets:
GRADLE_ENCRYPTION_KEY: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
@ -34,10 +43,9 @@ jobs:
name: Check Workflow Status # Matches another in pull-request, and is required for merge to main.
runs-on: ubuntu-latest
needs:
[
build_and_detekt,
androidTest
]
- lint
- build
- androidTest
if: always()
steps:
- name: Check Workflow Status
@ -48,5 +56,6 @@ jobs:
exit 1
fi
}
exit_on_result "build_and_detekt" "${{ needs.build_and_detekt.result }}"
exit_on_result "lint" "${{ needs.lint.result }}"
exit_on_result "build" "${{ needs.build.result }}"
exit_on_result "androidTest" "${{ needs.androidTest.result }}"