name: Deploy Flutter to Firebase (Mac)
on:
  push:
    branches: release

jobs:
  deploy-android:
    runs-on: macos-latest
    
    steps:
      - name: Checkout code
        uses: actions/checkout@v3

      # 1. On configure explicitement une version récente de Ruby
      # Cela évite d'utiliser le vieux Ruby système (2.6) qui causait tes erreurs.
      - name: Configurer Ruby
        uses: ruby/setup-ruby@v1
        with:
          ruby-version: '3.0' 

      - name: Vérifier l'installation Flutter
        run: flutter doctor -v

      - name: Installer les dépendances Flutter
        run: flutter pub get

      - name: Créer le fichier .env
        run: echo "${{ secrets.ENV_FILE }}" > .env

      - name: Créer les identifiants Firebase
        run: echo "${{ secrets.FIREBASE_CREDENTIALS }}" > ./android/firebase_credentials.json

      - name: Créer key.properties
        run: echo "${{ secrets.ANDROID_KEY_PROPERTIES }}" > ./android/key.properties

      - name: Lancer Fastlane
        working-directory: ./android
        env:
          ANDROID_KEYSTORE_BASE64: ${{ secrets.ANDROID_KEYSTORE_BASE64 }}
          FIREBASE_ANDROID_APP_ID: ${{ secrets.FIREBASE_ANDROID_APP_ID }}
        run: |
          # Sécurité : on force l'installation d'un Bundler récent
          gem install bundler
          
          # On installe les gems (plugins fastlane, etc.)
          bundle install
          
          # IMPORTANT : On utilise 'bundle exec' pour utiliser les versions exactes installées
          bundle exec fastlane deploy_firebase