test 26
All checks were successful
Deploy Flutter to Firebase (Mac) / deploy-android (push) Successful in 2m18s

This commit is contained in:
Van Leemput Dayron
2026-01-10 23:40:18 +01:00
parent 31fe3a4260
commit 8d27e771a7

View File

@@ -69,32 +69,50 @@ jobs:
env:
FIREBASE_IOS_APP_ID: ${{ secrets.FIREBASE_IOS_APP_ID }}
run: |
# 1. Configuration du chemin Ruby Homebrew
export PATH="/opt/homebrew/opt/ruby/bin:/opt/homebrew/bin:$PATH"
gem install bundler -v 2.7.2 --no-document
# 2. Entrer dans le dossier ios avant toute opération
cd ios
# 3. Création du Gemfile "blindé" pour Ruby 3.4
# On écrase tout ancien fichier pour être sûr de repartir sur du propre
echo "source 'https://rubygems.org'" > Gemfile
echo "gem 'fastlane', '>= 2.214.0'" >> Gemfile
echo "gem 'fastlane-plugin-firebase_app_distribution'" >> Gemfile
# Correctifs pour les gems retirées du cœur de Ruby 3.4
echo "gem 'ostruct'" >> Gemfile
echo "gem 'nkf'" >> Gemfile
echo "gem 'abbrev'" >> Gemfile
echo "gem 'base64'" >> Gemfile
echo "gem 'csv'" >> Gemfile
echo "gem 'mutex_m'" >> Gemfile
echo "gem 'bigdecimal'" >> Gemfile
# 4. Installation des dépendances dans le dossier local
bundle _2.7.2_ config set path 'vendor/bundle'
bundle _2.7.2_ install
# RECHERCHE ULTRA-LARGE (On cherche depuis la racine du projet)
echo "🔍 Recherche de l'IPA dans tout le projet..."
# 5. Recherche dynamique de l'IPA
# On cherche depuis la racine du projet (un dossier au-dessus)
echo "🔍 Localisation de l'IPA..."
IPA_PATH=$(find .. -name "*.ipa" -not -path "*/Pods/*" | head -n 1)
if [ -z "$IPA_PATH" ]; then
echo "❌ ERREUR : Aucun fichier .ipa trouvé."
echo "📁 Contenu du dossier build actuel :"
ls -R ../build || echo "Le dossier build est vide ou inexistant"
echo "❌ ERREUR : Aucun fichier .ipa trouvé. Vérifie l'étape de build."
exit 1
fi
echo "📦 IPA détectée : $IPA_PATH"
echo "📦 IPA trouvée : $IPA_PATH"
echo "🚀 Envoi final vers Firebase..."
# 6. Envoi final vers Firebase
echo "🚀 Téléchargement vers Firebase App Distribution..."
bundle _2.7.2_ exec fastlane run firebase_app_distribution \
app:"$FIREBASE_IOS_APP_ID" \
ipa_path:"$IPA_PATH" \
service_credentials_file:"firebase_credentials.json" \
release_notes: "TravelMate iOS stable - Xcode 26.2"
release_notes: "Build stable TravelMate - Xcode 26.2"
- name: Nettoyage (Post-build)
if: always()