71 lines
2.2 KiB
YAML
71 lines
2.2 KiB
YAML
name: Android CD Release
|
|
|
|
on:
|
|
push:
|
|
tags: [ v* ]
|
|
repository_dispatch:
|
|
workflow_dispatch:
|
|
jobs:
|
|
build-aab:
|
|
name: Build signed AAB
|
|
outputs:
|
|
release-apk: ${{steps.signing.outputs.signedReleaseFile}}
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
- name: Restore Cache
|
|
uses: actions/cache@v2
|
|
with:
|
|
path: |
|
|
~/.gradle/caches
|
|
~/.gradle/wrapper
|
|
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-gradle-
|
|
- name: Set up JDK 11
|
|
uses: actions/setup-java@v1
|
|
with:
|
|
java-version: 11
|
|
- name: Change gradle permission
|
|
run: chmod +x ./gradlew
|
|
- name: Assemble release AAB
|
|
run: ./gradlew bundleRelease
|
|
- uses: r0adkll/sign-android-release@v1
|
|
name: Sign release AAB
|
|
id: signing
|
|
with:
|
|
releaseDirectory: app/build/outputs/bundle/release
|
|
signingKeyBase64: ${{ secrets.SIGN_KEY }}
|
|
alias: ${{ secrets.KEY_ALIAS }}
|
|
keyStorePassword: ${{ secrets.STORE_PASSWORD }}
|
|
keyPassword: ${{ secrets.KEY_PASSWORD }}
|
|
env:
|
|
BUILD_TOOLS_VERSION: 30.0.2
|
|
- uses: actions/upload-artifact@v2
|
|
with:
|
|
name: release-aab
|
|
path: |
|
|
${{steps.signing.outputs.signedReleaseFile}}
|
|
app/build/outputs/mapping/release/mapping.txt
|
|
deploy-google-play:
|
|
name: Deploy to Google Play
|
|
needs: [ build-aab ]
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Download release AAB
|
|
uses: actions/download-artifact@master
|
|
with:
|
|
name: release-aab
|
|
- name: Upload file to Google Play
|
|
uses: r0adkll/upload-google-play@v1
|
|
with:
|
|
serviceAccountJsonPlainText: ${{ secrets.FIREBASE_KEY }}
|
|
packageName: com.spaceapps.myapplication
|
|
releaseFiles: bundle/release/app-release.aab
|
|
track: internal
|
|
# inAppUpdatePriority: 2
|
|
# userFraction: 0.33
|
|
# whatsNewDirectory: distribution/whatsnew
|
|
mappingFile: mapping/release/mapping.txt
|