Skip to content

Update android-release.yml #8

Update android-release.yml

Update android-release.yml #8

Workflow file for this run

name: Android CI/CD
on:
push:
tags:
- 'v*' # Trigger bei Tags wie v1.0, v2.1.3 etc.
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
cache: gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build Release APK
run: ./gradlew assembleRelease
- name: Sign APK
uses: r0adkll/sign-android-release@v1
id: sign_app
env:
BUILD_TOOLS_VERSION: "34.0.0"
with:
releaseDirectory: app/build/outputs/apk/release
signingKeyBase64: ${{ secrets.SIGNING_KEY }}
alias: ${{ secrets.KEY_ALIAS }}
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
keyPassword: ${{ secrets.KEY_PASSWORD }}
# Hier legst du fest, wie die FERTIGE (signierte) Datei heißen soll
output: LocalShare-${{ github.ref_name }}.apk
- name: Rename and Prepare Files
run: |
# 1. Die unsignierte Datei umbenennen
mv app/build/outputs/apk/release/app-release-unsigned.apk \
app/build/outputs/apk/release/LocalShare-${{ github.ref_name }}-unsigned.apk
# 2. Die signierte Datei umbenennen (wir nutzen den Output der Action)
mv ${{ steps.sign_app.outputs.signedReleaseFile }} \
app/build/outputs/apk/release/LocalShare-${{ github.ref_name }}.apk
- name: Upload Release Assets
uses: softprops/action-gh-release@v2
with:
# Hier listen wir jetzt EXAKT auf, welche zwei Dateien hochgeladen werden sollen
files: |
app/build/outputs/apk/release/LocalShare-${{ github.ref_name }}.apk
app/build/outputs/apk/release/LocalShare-${{ github.ref_name }}-unsigned.apk
fail_on_unresolved_entities: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}