Some checks failed
Deploy Flutter to Firebase / deploy-android (push) Failing after 9m42s
35 lines
1.3 KiB
Ruby
35 lines
1.3 KiB
Ruby
default_platform(:android)
|
|
|
|
platform :android do
|
|
desc "Déploiement AAB vers Firebase"
|
|
lane :deploy_firebase do
|
|
|
|
# --- DÉBUT DU BLOC CRITIQUE ---
|
|
# C'est ici qu'on crée le fichier keystore physiquement sur le serveur
|
|
# avant que Gradle ne le cherche.
|
|
if ENV['ANDROID_KEYSTORE_BASE64']
|
|
# On décode le secret Gitea et on l'écrit dans un fichier .jks
|
|
File.open("upload-keystore.jks", "wb") do |f|
|
|
f.write(Base64.decode64(ENV['ANDROID_KEYSTORE_BASE64']))
|
|
end
|
|
UI.message("✅ Fichier upload-keystore.jks créé avec succès !")
|
|
else
|
|
UI.user_error!("❌ ERREUR : Le secret ANDROID_KEYSTORE_BASE64 est vide !")
|
|
end
|
|
# --- FIN DU BLOC CRITIQUE ---
|
|
|
|
# 2. Construire l'App Bundle (.aab)
|
|
# Gradle va maintenant trouver le fichier créé juste au-dessus
|
|
sh("flutter build appbundle --release")
|
|
|
|
# 3. Envoyer vers Firebase
|
|
firebase_app_distribution(
|
|
app: ENV["FIREBASE_ANDROID_APP_ID"],
|
|
service_credentials_file: "firebase_credentials.json",
|
|
groups: "testers",
|
|
# On pointe bien vers le fichier .aab généré
|
|
android_artifact_path: "../build/app/outputs/bundle/release/app-release.aab",
|
|
release_notes: "Version AAB via Gitea. Commit: #{ENV['GITHUB_SHA']}"
|
|
)
|
|
end
|
|
end |