fix: simplify workflow keystore setup logic

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Davide Ferrari
2025-12-22 18:12:32 +01:00
parent 07811d5cf4
commit 8d9101bbc5

View File

@@ -22,21 +22,21 @@ jobs:
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
- name: Decode keystore
if: ${{ secrets.KEYSTORE_BASE64 != '' }}
- name: Setup keystore
env:
KEYSTORE_BASE64: ${{ secrets.KEYSTORE_BASE64 }}
run: |
echo "$KEYSTORE_BASE64" | base64 -d > app/release.keystore
- name: Create debug keystore (fallback)
if: ${{ secrets.KEYSTORE_BASE64 == '' }}
run: |
mkdir -p ~/.android
keytool -genkey -v -keystore ~/.android/debug.keystore \
-storepass android -alias androiddebugkey -keypass android \
-keyalg RSA -keysize 2048 -validity 10000 \
-dname "CN=Android Debug,O=Android,C=US"
if [ -n "$KEYSTORE_BASE64" ]; then
echo "Using release keystore from secrets"
echo "$KEYSTORE_BASE64" | base64 -d > app/release.keystore
else
echo "No keystore secret found, creating debug keystore"
mkdir -p ~/.android
keytool -genkey -v -keystore ~/.android/debug.keystore \
-storepass android -alias androiddebugkey -keypass android \
-keyalg RSA -keysize 2048 -validity 10000 \
-dname "CN=Android Debug,O=Android,C=US"
fi
- name: Build Release APK
env:
@@ -47,6 +47,14 @@ jobs:
run: ./gradlew assembleRelease
- name: Upload APK to release
if: github.event_name == 'release'
uses: softprops/action-gh-release@v2
with:
files: app/build/outputs/apk/release/app-release.apk
- name: Upload APK as artifact
if: github.event_name == 'workflow_dispatch'
uses: actions/upload-artifact@v4
with:
name: app-release
path: app/build/outputs/apk/release/app-release.apk