Skip to content

feat(quick-settings): add tile to launch app (#74) #77

feat(quick-settings): add tile to launch app (#74)

feat(quick-settings): add tile to launch app (#74) #77

name: Android Release
on:
push:
branches:
- master
- staging
jobs:
release:
runs-on: ubuntu-latest
steps:
- name: πŸ”‘ Create token
uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ secrets.GH_APP_ID}}
private-key: ${{ secrets.GH_PRIVATE_KEY }}
- name: πŸ“₯ Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0
token: ${{ steps.app-token.outputs.token }}
- name: πŸ“¦ Setup JDK
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '21'
cache: 'gradle'
- name: πŸ“¦ Setup Android SDK
uses: android-actions/setup-android@v3
- name: 🧹 Check format
run: |
./gradlew ktfmtCheck
- name: πŸ” Setup Keystore
env:
KEYSTORE_BASE64: ${{ secrets.KEYSTORE_BASE64 }}
run: |
echo $KEYSTORE_BASE64 | base64 --decode > keystore.jks
- name: πŸš€ Release APK
uses: cycjimmy/semantic-release-action@v4
id: release
env:
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
with:
semantic_version: 24
extra_plugins: |
@semantic-release/changelog
@semantic-release/git
@semantic-release/exec
- name: πŸ“€ Upload bundle to PlayStore
if: steps.release.outputs.new_release_published == 'true'
uses: r0adkll/upload-google-play@v1
with:
releaseFiles: app/build/outputs/bundle/release/app-release.aab
serviceAccountJsonPlainText: ${{ secrets.SERVICE_ACCOUNT_JSON }}
packageName: de.pawcode.cardstore
track: ${{ github.ref == 'refs/heads/master' && 'production' || 'beta' }}
releaseName: ${{ steps.release.outputs.new_release_version }}
status: draft
mappingFile: app/build/outputs/mapping/release/mapping.txt
debugSymbols: app/build/intermediates/merged_native_libs/release/mergeReleaseNativeLibs/out/lib