Skip to content

v2.8.1

v2.8.1 #4

Workflow file for this run

name: Publish to Google Play
on:
release:
types: [ released ]
jobs:
build-and-publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Decode Keystore and Google Service file
env:
ENCODED_KEYSTORE: ${{ secrets.KEYSTORE_FILE }}
ENCODED_GOOGLE_SERVICES_JSON: ${{ secrets.GOOGLE_SERVICES_JSON }}
run: |
echo $ENCODED_KEYSTORE | base64 -d > ./BudgetKey
echo $ENCODED_GOOGLE_SERVICES_JSON | base64 -d > ./app/google-services.json
- name: Echo Secrets
env:
KEYSTORE_ALIAS: ${{ secrets.KEYSTORE_ALIAS }}
KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
run: |
echo KEYSTORE_PATH=./BudgetKey > ./local.properties
echo KEYSTORE_ALIAS=$KEYSTORE_ALIAS >> ./local.properties
echo KEYSTORE_PASSWORD=$KEYSTORE_PASSWORD >> ./local.properties
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Run unit tests
run: ./gradlew test
- name: Assemble release AAB
run: ./gradlew bundleRelease
- name: Deploy the Play Store beta channel
uses: r0adkll/[email protected]
with:
serviceAccountJsonPlainText: ${{ secrets.SERVICE_ACCOUNT_JSON }}
packageName: com.kevlina.budgetplus
releaseFiles: app/build/outputs/bundle/release/app-release.aab
mappingFile: app/build/outputs/mapping/release/mapping.txt
track: beta
# Get the tag name from the release
releaseName: ${{ github.event.release.tag_name }}
whatsNewDirectory: distribution/whatsnew
- name: Upload build outputs
uses: actions/upload-artifact@v4
with:
name: build-outputs
path: app/build/outputs