Skip to content

Actions

Actions #3

Workflow file for this run

name: Automatic Build + Upload on push
on:
push:
branches: [ "new" ]
paths-ignore:
- '.gitignore'
- 'app/.gitignore'
- '*.md'
- 'LICENSE'
env:
KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'corretto'
java-version: '11'
- name: Decode the Keystore
env:
KEYSTORE_BASE64: ${{ secrets.KEYSTORE_BASE64 }}
run: |
echo "$KEYSTORE_BASE64" | base64 --decode > $GITHUB_WORKSPACE/KEYSTORE.JKS
- name: Build Release APK
run: |
./gradlew clean assembleRelease
- name: Build Debug APK
run: |
./gradlew assembleDebug
- name: Find Release APK file
id: find-release-apk
run: |
release_apk=$(ls -t $GITHUB_WORKSPACE/app/build/outputs/apk/release/*.apk | head -n1)
release_apk_filename=$(basename "$release_apk" .apk)
echo "release_apk_path=$release_apk" >> $GITHUB_OUTPUT
echo "release_apk_filename=$release_apk_filename" >> $GITHUB_OUTPUT
- name: Find Debug APK file
id: find-debug-apk
run: |
debug_apk=$(ls -t $GITHUB_WORKSPACE/app/build/outputs/apk/debug/*.apk | head -n1)
debug_apk_filename=$(basename "$debug_apk" .apk)
echo "debug_apk_path=$debug_apk" >> $GITHUB_OUTPUT
echo "debug_apk_filename=$debug_apk_filename" >> $GITHUB_OUTPUT
- name: Send commit info to Telegram
uses: appleboy/telegram-action@master
with:
to: ${{ secrets.TELEGRAM_CHANNEL_ID}}
token: ${{ secrets.TELEGRAM_BOT_TOKEN }}
message: |
New commit from: ${{ github.actor }}
Commit message: ${{ github.event.commits[0].message }}
Changes: https://github.com/${{ github.repository }}/commit/${{github.sha}}
- name: Upload Release APK to Telegram
uses: appleboy/telegram-action@master
with:
to: ${{ secrets.TELEGRAM_CHANNEL_ID }}
token: ${{ secrets.TELEGRAM_BOT_TOKEN }}
message: ' '
document: ${{ steps.find-release-apk.outputs.release_apk_path }}
- name: Upload Debug APK to Telegram
uses: appleboy/telegram-action@master
with:
to: ${{ secrets.TELEGRAM_CHANNEL_ID }}
token: ${{ secrets.TELEGRAM_BOT_TOKEN }}
message: ' '
document: ${{ steps.find-debug-apk.outputs.debug_apk_path }}
- name: Upload Release files to Artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ steps.find-release-apk.outputs.release_apk_filename }}
path: app/build/outputs/apk/release/
- name: Upload Debug files to Artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ steps.find-debug-apk.outputs.debug_apk_filename }}
path: app/build/outputs/apk/debug/