diff --git a/.gitea/workflows/android.yaml b/.gitea/workflows/android.yaml index 5e27cce..e381564 100644 --- a/.gitea/workflows/android.yaml +++ b/.gitea/workflows/android.yaml @@ -67,11 +67,15 @@ jobs: # 3. APK manuell signieren echo "Verarbeite Keystore-Secret..." - # Sicherstes Dekodieren: Erst White-Spaces weg, dann base64-binär-Output - echo "${{ secrets.ANDROID_KEYSTORE_BASE64 }}" | tr -d '[:space:]' > keystore.b64 - base64 -d keystore.b64 > release.keystore + # Wir speichern das Secret wortwörtlich in eine Datei (wichtig wegen Sonderzeichen) + cat <<'EOF' > keystore.b64 + ${{ secrets.ANDROID_KEYSTORE_BASE64 }} + EOF - # Validierung der Dateigröße + # Wir löschen ALLES, was kein valides Base64-Zeichen ist (Space, Newlines, Fragen) + tr -cd 'a-zA-Z0-9+/=' < keystore.b64 | base64 -d > release.keystore + + # Validierung FILE_SIZE=$(stat -c%s release.keystore) echo "Dekodierte Keystore-Größe: $FILE_SIZE Bytes"