Skip to content

Bump app version

Bump app version #178

# Builds the project
name: Android Release CI
on:
push:
tags:
- '*'
jobs:
build:
name: Build, Sign & Release
runs-on: ubuntu-latest
steps:
- name: Checkout project
uses: actions/[email protected]
with:
token: ${{ github.actor == 'dependabot[bot]' && secrets.GITHUB_TOKEN || secrets.GIT_BOT_TOKEN }}
ref: main
- name: set up JDK 17
uses: actions/[email protected]
with:
java-version: '17'
distribution: 'temurin'
cache: gradle
- uses: actions/[email protected]
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build
run: ./gradlew clean && ./gradlew assembleRelease && ./gradlew bundleRelease
- name: Sign APK
uses: ilharp/[email protected]
# ID used to access action output
id: sign_app_apk
with:
releaseDir: app/build/outputs/apk/release
signingKey: ${{ secrets.SIGNINGKEY_BASE64 }}
keyAlias: ${{ secrets.KEY_ALIAS }}
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
keyPassword: ${{ secrets.KEY_PASSWORD }}
buildToolsVersion: 35.0.0
- name: Release to GitHub
uses: svenstaro/[email protected]
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ${{steps.sign_app_apk.outputs.signedFile}}
asset_name: MultiLauncher-${{ github.ref_name }}-Signed.apk
tag: ${{ github.ref }}
overwrite: true
- name: Upload ProGuard Mapping File
uses: svenstaro/[email protected]
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: app/build/outputs/mapping/release/mapping.txt
asset_name: MultiLauncher-${{ github.ref_name }}-mapping.txt
tag: ${{ github.ref }}
overwrite: true
- name: Sign AAB
uses: ilharp/[email protected]
# ID used to access action output
id: sign_app_aab
with:
releaseDir: app/build/outputs/bundle/release/
signingKey: ${{ secrets.SIGNINGKEY_BASE64 }}
keyAlias: ${{ secrets.KEY_ALIAS }}
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
keyPassword: ${{ secrets.KEY_PASSWORD }}
buildToolsVersion: 35.0.0
- name: Release to GitHub
uses: svenstaro/[email protected]
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ${{steps.sign_app_aab.outputs.signedFile}}
asset_name: MultiLauncher-${{ github.ref_name }}-Signed.aab
tag: ${{ github.ref }}
overwrite: true
- name: Set up Node.js
uses: actions/setup-node@v5
with:
node-version: '20' # or whatever version you need
- name: Post Release to Discord
env:
DISCORD_WEBHOOK_URL: ${{ secrets.DISCORD_WEBHOOK_URL }}
run: |
# Run your Discord release script
node post-discord-release.js