diff --git a/.gitea/workflows/deploy-android.yaml b/.gitea/workflows/deploy-android.yaml index 32c29a2..6e8e947 100644 --- a/.gitea/workflows/deploy-android.yaml +++ b/.gitea/workflows/deploy-android.yaml @@ -17,24 +17,12 @@ jobs: - name: Installer les dépendances Flutter run: flutter pub get - - name: Créer les fichiers secrets (Avec Debug JSON) + - name: Créer les fichiers secrets run: | echo "${{ secrets.ENV_FILE }}" > .env - - # --- 📝 ÉCRITURE SÉCURISÉE DU JSON --- - # On utilise printf pour éviter que le shell ne mange les guillemets printf '%s' '${{ secrets.FIREBASE_CREDENTIALS }}' > ./android/firebase_credentials.json - - echo "---------------------------------------------------" - echo "⚠️ DEBUG : Vérification du début du JSON Firebase" - echo "(Ne doit PAS être vide et doit commencer par { \"type\": ... )" - echo "---------------------------------------------------" - # On affiche juste les 50 premiers caractères pour ne pas fuiter tout le secret - head -c 50 ./android/firebase_credentials.json - echo "" - echo "---------------------------------------------------" - - name: Lancer Fastlane (Final) + - name: Lancer Fastlane (Force APK) working-directory: ./android env: ANDROID_KEYSTORE_BASE64: ${{ secrets.ANDROID_KEYSTORE_BASE64 }} @@ -47,8 +35,7 @@ jobs: export GEM_PATH=$PWD/vendor/bundle export PATH=$GEM_HOME/bin:$PATH - # 2. Génération Keystore & Properties - echo "🔓 Décodage du Keystore..." + # 2. Keystore & Properties echo "$ANDROID_KEYSTORE_BASE64" | base64 -D > keystore.jks KEYSTORE_PATH=$(pwd)/keystore.jks @@ -62,13 +49,11 @@ jobs: echo "keyAlias=$KEY_ALIAS" >> key.properties echo "storeFile=$KEYSTORE_PATH" >> key.properties - # 3. Préparation Gemfile + # 3. Installation Dépendances rm -rf vendor Gemfile.lock .bundle - echo "source 'https://rubygems.org'" > Gemfile echo "gem 'fastlane', '>= 2.210.0'" >> Gemfile echo "gem 'fastlane-plugin-firebase_app_distribution'" >> Gemfile - # Patchs Ruby 3.4 echo "gem 'abbrev'" >> Gemfile echo "gem 'ostruct'" >> Gemfile @@ -79,10 +64,25 @@ jobs: echo "gem 'drb'" >> Gemfile echo "gem 'nkf'" >> Gemfile - # 4. Installation & Lancement echo "⬇️ Installation..." gem install bundler -v 2.7.2 --force --no-document bundle _2.7.2_ update --jobs 4 - echo "🚀 Déploiement vers Firebase..." - bundle _2.7.2_ exec fastlane deploy_firebase \ No newline at end of file + # 4. CONSTRUCTION ET ENVOI MANUEL EN APK 🗝️ + # On remonte à la racine pour lancer Flutter + cd .. + + echo "🚧 Construction de l'APK (Format compatible sans Play Store)..." + # C'est cette commande qui change tout : APK au lieu de AppBundle + flutter build apk --release + + # On redescend dans le dossier android pour lancer fastlane + cd android + + echo "🚀 Envoi de l'APK vers Firebase..." + # On pointe vers le fichier APK généré + bundle _2.7.2_ exec fastlane run firebase_app_distribution \ + app:"$FIREBASE_ANDROID_APP_ID" \ + android_artifact_path:"../build/app/outputs/flutter-apk/app-release.apk" \ + service_credentials_file:"firebase_credentials.json" \ + release_notes:"Build APK via Act - Test" \ No newline at end of file