CI / quality (push) Waiting to run
CI / e2e-and-a11y (push) Blocked by required conditions
CI / lighthouse (push) Blocked by required conditions
CI / android-smoke (push) Waiting to run
CI / pull-request-report (push) Blocked by required conditions
Security / codeql (push) Waiting to run
Security / deps-and-secrets (push) Waiting to run
51 lines
1.5 KiB
YAML
51 lines
1.5 KiB
YAML
name: Mobile Release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "mobile-v*"
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
android:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v7
|
|
- uses: actions/setup-node@v7
|
|
with:
|
|
node-version: 22
|
|
cache: npm
|
|
- uses: actions/setup-java@v5
|
|
with:
|
|
distribution: temurin
|
|
java-version: 21
|
|
- name: Setup Android SDK
|
|
uses: android-actions/setup-android@v4
|
|
- run: sdkmanager "platforms;android-35" "build-tools;35.0.0"
|
|
- run: npm ci
|
|
- run: npm run build:web
|
|
- run: npm run mobile:sync
|
|
- name: Gradle bundleDebug (sans keystore Play — artefact de validation CI)
|
|
working-directory: apps/mobile/android
|
|
run: chmod +x gradlew && ./gradlew bundleDebug --no-daemon
|
|
- uses: actions/upload-artifact@v7
|
|
with:
|
|
name: android-bundle-debug
|
|
path: apps/mobile/android/app/build/outputs/bundle/debug/*.aab
|
|
if-no-files-found: error
|
|
|
|
ios:
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v7
|
|
- uses: actions/setup-node@v7
|
|
with:
|
|
node-version: 22
|
|
cache: npm
|
|
- run: npm ci
|
|
- run: npm run build:web
|
|
- run: npm run mobile:sync
|
|
- name: iOS — projet non versionné ou machine locale
|
|
run: |
|
|
if [ -d apps/mobile/ios/App ]; then echo "Projet iOS présent — ouvrir Xcode pour archive."; else echo "Pas de dossier ios dans ce clone — ignorer pour Android-only."; fi
|