Some checks failed
Deploy Android to Play Store / build-and-deploy (push) Failing after 26m33s
67 lines
2.1 KiB
YAML
67 lines
2.1 KiB
YAML
name: Deploy Android to Play Store
|
|
run-name: Deploy ${{ gitea.actor }} to Internal Track 🚀
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- release # Se déclenche uniquement sur la branche release
|
|
|
|
jobs:
|
|
build-and-deploy:
|
|
runs-on: ubuntu-latest # Le runner Gitea standard
|
|
steps:
|
|
# 1. Récupérer le code
|
|
- name: Checkout code
|
|
uses: actions/checkout@v3
|
|
|
|
# 2. Installer Java
|
|
- name: Setup Java
|
|
uses: actions/setup-java@v3
|
|
with:
|
|
distribution: 'zulu'
|
|
java-version: '17'
|
|
|
|
|
|
- name: Setup Android SDK
|
|
uses: android-actions/setup-android@v3
|
|
|
|
# 3. Installer Flutter
|
|
- name: Setup Flutter
|
|
uses: subosito/flutter-action@v2
|
|
with:
|
|
channel: 'stable'
|
|
cache: true
|
|
|
|
# 4. Récupérer les dépendances
|
|
- name: Flutter Pub Get
|
|
run: flutter pub get
|
|
|
|
# 5. Reconstruire le Keystore depuis le Secret Base64
|
|
- name: Decode Keystore
|
|
run: |
|
|
echo "${{ secrets.ANDROID_KEYSTORE_BASE64 }}" | base64 --decode > android/app/upload-keystore.jks
|
|
|
|
# 6. Créer le fichier key.properties
|
|
- name: Create key.properties
|
|
run: |
|
|
echo "storePassword=${{ secrets.KEYSTORE_PASSWORD }}" > android/key.properties
|
|
echo "keyPassword=${{ secrets.KEY_PASSWORD }}" >> android/key.properties
|
|
echo "keyAlias=${{ secrets.KEY_ALIAS }}" >> android/key.properties
|
|
echo "storeFile=upload-keystore.jks" >> android/key.properties
|
|
|
|
# 7. Compiler l'AppBundle (.aab)
|
|
- name: Build AppBundle
|
|
run: flutter build appbundle --release
|
|
|
|
|
|
|
|
# 8. Envoyer sur le Play Store
|
|
# Cette action remplace Fastlane manuel, c'est plus simple dans Gitea
|
|
- name: Upload to Play Store
|
|
uses: r0adkll/upload-google-play@v1
|
|
with:
|
|
serviceAccountJsonPlainText: ${{ secrets.PLAY_STORE_JSON }}
|
|
packageName: be.devdayronvl.travel_mate
|
|
releaseFiles: build/app/outputs/bundle/release/app-release.aab
|
|
track: internal # 'internal' = Test interne, 'alpha' = Test fermé
|
|
status: completed |