Files
donext/.github/workflows/android.yaml
2025-11-08 22:07:24 -05:00

75 lines
1.9 KiB
YAML

name: Android CI
on:
push:
branches:
- master
pull_request:
workflow_dispatch:
env:
MODULE: donextv2
BUILD_DIR: ${{ env.MODULE }}/build/outputs/bundle/release
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '17'
- name: Replace tokens in build.gradle
run: |
sed -i 's/#{\([^}]*\)}/${\1}/g' donext/build.gradle
- name: Cache Gradle
uses: actions/cache@v3
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Run unit tests
run: ./gradlew :${{ env.MODULE }}:testDebugUnitTest --stacktrace
- name: Build AAB
run: ./gradlew :${{ env.MODULE }}:bundleRelease
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: release-aab
path: ${{ env.BUILD_DIR }}/*release*.aab
deploy-google-play:
needs: build
if: github.event_name == 'workflow_dispatch'
runs-on: ubuntu-latest
steps:
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: release-aab
path: release
- name: Deploy to Google Play (production)
uses: r0adkll/upload-google-play@v1
with:
serviceAccountJsonPlainText: ${{ secrets.GOOGLE_PLAY_SERVICE_ACCOUNT_JSON }}
packageName: com.wismna.geoffroy.donext
releaseFiles: release/${{ env.MODULE }}-release.aab
track: beta
metadataRootDirectory: fastlane/metadata/android
whatsNewDirectory: fastlane/metadata/android/en-US/changelogs
status: completed