feat(pluriwave): añadir firma release con keystore pluriwave-upload para Google Play
Build & Deploy Pluriwave / Análisis de código (push) Failing after 3s
Build & Deploy Pluriwave / Build APK + AAB release (push) Has been skipped

This commit is contained in:
FreeTLab
2026-05-25 20:47:19 +02:00
parent 41bbd0ea17
commit 42dd64635c
2 changed files with 32 additions and 13 deletions
+23 -6
View File
@@ -7,6 +7,8 @@ on:
env:
PATH: /opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
ANDROID_HOME: /Users/freetlab/Library/Android/sdk
KEYSTORE_PATH: /Users/freetlab/.openclaw/workspace/.secure/pluriwave/pluriwave-upload.jks
KEYSTORE_ALIAS: pluriwave-upload
jobs:
analizar:
@@ -16,8 +18,6 @@ jobs:
- uses: actions/checkout@v4
- name: Obtener dependencias
run: flutter pub get
#- name: Generar l10n
# run: flutter gen-l10n
- name: Analizar código
run: flutter analyze --no-fatal-infos --no-fatal-warnings
@@ -29,6 +29,21 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Configurar keystore de firma
env:
KEYSTORE_PASSWORD: ${{ secrets.PLURIWAVE_KEYSTORE_PASSWORD }}
run: |
echo "Verificando keystore..."
if [ ! -f "$KEYSTORE_PATH" ]; then
echo "ERROR: Keystore no encontrado en $KEYSTORE_PATH"
exit 1
fi
echo "storeFile=$KEYSTORE_PATH" > android/key.properties
echo "storePassword=$KEYSTORE_PASSWORD" >> android/key.properties
echo "keyAlias=$KEYSTORE_ALIAS" >> android/key.properties
echo "keyPassword=$KEYSTORE_PASSWORD" >> android/key.properties
echo "✅ Keystore configurado"
- name: Bump versión patch + commit
run: |
git config user.name "ShanaiaBot"
@@ -59,15 +74,17 @@ jobs:
- name: Obtener dependencias
run: flutter pub get
#- name: Generar l10n
# run: flutter gen-l10n
- name: Build APK release
run: flutter build apk --release
- name: Build AAB release
run: flutter build appbundle --release
- name: Verificar firma del AAB
run: |
echo "Verificando certificado del AAB..."
keytool -list -v -keystore "$KEYSTORE_PATH" -alias $KEYSTORE_ALIAS -storepass "$KEYSTORE_PASSWORD" 2>/dev/null | grep "SHA1:\|SHA256:" || echo "No se pudo verificar"
- name: Publicar en ftl-builds (Zimaboard)
run: |
VERSION="${{ steps.version.outputs.version }}"
@@ -94,7 +111,7 @@ jobs:
BOT_TOKEN=$(plutil -extract 'EnvironmentVariables:TELEGRAM_BOT_TOKEN' raw /Users/freetlab/Library/LaunchAgents/ai.openclaw.gateway.plist 2>/dev/null || echo "")
if [ -z "$BOT_TOKEN" ]; then exit 0; fi
if [ "${{ job.status }}" = "success" ]; then
MSG="✅ *Pluriwave* v${VERSION} build OK · ${COMMIT}%0AAPK + AAB en builds.freetimelab.es"
MSG="✅ *Pluriwave* v${VERSION} build OK (firma release) · ${COMMIT}%0AAPK + AAB en builds.freetimelab.es"
else
MSG="❌ *Pluriwave* v${VERSION} build FAILED · ${COMMIT}"
fi
+9 -7
View File
@@ -1,7 +1,6 @@
plugins {
id("com.android.application")
id("kotlin-android")
// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
id("dev.flutter.flutter-gradle-plugin")
}
@@ -20,21 +19,24 @@ android {
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId = "es.freetimelab.pluriwave"
// You can update the following values to match your application needs.
// For more information, see: https://flutter.dev/to/review-gradle-config.
minSdk = flutter.minSdkVersion
targetSdk = flutter.targetSdkVersion
versionCode = flutter.versionCode
versionName = flutter.versionName
}
signingConfigs {
create("release") {
// Configurado por el workflow via android/key.properties
// Keystore: ~/.openclaw/workspace/.secure/pluriwave/pluriwave-upload.jks
// Alias: pluriwave-upload
}
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig = signingConfigs.getByName("debug")
signingConfig = signingConfigs.getByName("release")
}
}
}