Skip to content

Build release-app

Build release-app #1

Workflow file for this run

name: Build release-app
"on":
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checking out branch
uses: actions/checkout@v3
- name: Setup Java
uses: actions/setup-java@v3
with:
distribution: temurin
java-version: 17
- name: Setup Android SDK
uses: android-actions/setup-android@v2.0.10
- name: Decode Keystore
env:
ENCODED_STRING: "${{ secrets.KEYSTORE_BASE_64 }}"
RELEASE_KEYSTORE_PASSWORD: "${{ secrets.RELEASE_KEYSTORE_PASSWORD }}"
RELEASE_KEYSTORE_ALIAS: "${{ secrets.RELEASE_KEYSTORE_ALIAS }}"
RELEASE_KEY_PASSWORD: "${{ secrets.RELEASE_KEY_PASSWORD }}"
run: |
mkdir -p app/../ks
echo $ENCODED_STRING > keystore-b64.txt
base64 -d keystore-b64.txt > app/../ks/keystore.jks
- name: Make gradlew executable
run: chmod +x ./gradlew
- name: Build Release APK
env:
RELEASE_KEYSTORE_PASSWORD: "${{ secrets.RELEASE_KEYSTORE_PASSWORD }}"
RELEASE_KEYSTORE_ALIAS: "${{ secrets.RELEASE_KEYSTORE_ALIAS }}"
RELEASE_KEY_PASSWORD: "${{ secrets.RELEASE_KEY_PASSWORD }}"
run: ./gradlew assembleRelease --stacktrace
- name: Build Release Bundle
env:
RELEASE_KEYSTORE_PASSWORD: "${{ secrets.RELEASE_KEYSTORE_PASSWORD }}"
RELEASE_KEYSTORE_ALIAS: "${{ secrets.RELEASE_KEYSTORE_ALIAS }}"
RELEASE_KEY_PASSWORD: "${{ secrets.RELEASE_KEY_PASSWORD }}"
run: ./gradlew bundleRelease --stacktrace
- name: Get release file AAB path
id: releaseAab
run: echo "aabfile=$(find app/build/outputs/bundle/release/*.aab)" >> $GITHUB_ENV
- name: Get release file APK path
id: releaseApk
run: echo "apkfile=$(find app/build/outputs/apk/release/*.apk)" >> $GITHUB_ENV
- name: Create ZIP file with APK and AAB
run: |
mkdir -p release-output
cp ${{ env.aabfile }} release-output/
cp ${{ env.apkfile }} release-output/
zip -r release-output.zip release-output/
- name: Upload Release Build to Artifacts
uses: actions/upload-artifact@v4
with:
name: release-artifacts
path: |
${{ env.aabfile }}
${{ env.apkfile }}
release-output.zip