Ajout de la compilation signée de l’apk
This commit is contained in:
		@ -15,7 +15,6 @@ on:
 | 
			
		||||
          - oui
 | 
			
		||||
          - non
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  release:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
@ -24,7 +23,7 @@ jobs:
 | 
			
		||||
      - name: 📦 Cloner le dépôt
 | 
			
		||||
        uses: actions/checkout@v3
 | 
			
		||||
        with:
 | 
			
		||||
          fetch-depth: 0  # important pour récupérer tout l'historique
 | 
			
		||||
          fetch-depth: 0
 | 
			
		||||
 | 
			
		||||
      - name: 🔧 Préparation de Git (tags)
 | 
			
		||||
        run: git fetch --tags
 | 
			
		||||
@ -95,8 +94,6 @@ jobs:
 | 
			
		||||
          COMMITS: ${{ steps.changelog.outputs.modifications }}
 | 
			
		||||
        run: |
 | 
			
		||||
          TAG_NAME="${{ github.event.inputs.tag }}"
 | 
			
		||||
          
 | 
			
		||||
          # Échappement du contenu pour JSON
 | 
			
		||||
          DESCRIPTION="Changelog:"$'\n'"$COMMITS"
 | 
			
		||||
          ESCAPED_DESCRIPTION=$(printf '%s\n' "$DESCRIPTION" | jq -Rsa .)
 | 
			
		||||
 | 
			
		||||
@ -114,7 +111,6 @@ jobs:
 | 
			
		||||
          ID_RELEASE=$(echo "$REPONSE" | jq -r .id)
 | 
			
		||||
          echo "id_release=$ID_RELEASE" >> $GITHUB_OUTPUT
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
      - name: 🔍️ Extraire les informations de l’application
 | 
			
		||||
        id: extraire-info-gradle
 | 
			
		||||
        if: ${{ github.event.inputs.build_apk == 'oui' }}
 | 
			
		||||
@ -141,9 +137,27 @@ jobs:
 | 
			
		||||
          api-level: ${{ steps.extraire-info-gradle.outputs.sdk }}
 | 
			
		||||
          build-tools-version: ${{ steps.extraire-info-gradle.outputs.sdk }}.0.3
 | 
			
		||||
 | 
			
		||||
      - name: 🛠️ Compilation de l’application (APK)
 | 
			
		||||
      - name: 🔐 Récupérer et décoder le keystore
 | 
			
		||||
        if: ${{ github.event.inputs.build_apk == 'oui' }}
 | 
			
		||||
        run: ./gradlew assembleRelease
 | 
			
		||||
        env:
 | 
			
		||||
          KEYSTORE_B64: ${{ secrets.KEYSTORE_B64 }}
 | 
			
		||||
        run: |
 | 
			
		||||
          echo "$KEYSTORE_B64" | base64 -d > keystore.jks
 | 
			
		||||
          ls -1 keystore.jks
 | 
			
		||||
 | 
			
		||||
      - name: 🛠️ Compilation signée de l’application (APK)
 | 
			
		||||
        if: ${{ github.event.inputs.build_apk == 'oui' }}
 | 
			
		||||
        env:
 | 
			
		||||
          KEYSTORE_FILE: keystore.jks
 | 
			
		||||
          KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
 | 
			
		||||
          KEY_ALIAS: ${{ secrets.KEYSTORE_ALIAS }}
 | 
			
		||||
          KEY_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
 | 
			
		||||
        run: |
 | 
			
		||||
          ./gradlew assembleRelease \
 | 
			
		||||
            -Pandroid.injected.signing.store.file=$KEYSTORE_FILE \
 | 
			
		||||
            -Pandroid.injected.signing.store.password=$KEYSTORE_PASSWORD \
 | 
			
		||||
            -Pandroid.injected.signing.key.alias=$KEY_ALIAS \
 | 
			
		||||
            -Pandroid.injected.signing.key.password=$KEY_PASSWORD
 | 
			
		||||
 | 
			
		||||
      - name: 🏷️ Renommer l’APK avec le nom de l’application et le tag
 | 
			
		||||
        id: renommer-apk
 | 
			
		||||
@ -152,12 +166,12 @@ jobs:
 | 
			
		||||
          APP_NAME=${{ steps.extraire-info-gradle.outputs.app_name }}
 | 
			
		||||
          TAG=${{ github.event.inputs.tag }}
 | 
			
		||||
          APK_DIR="app/build/outputs/apk/release"
 | 
			
		||||
          
 | 
			
		||||
 | 
			
		||||
          APKs=""
 | 
			
		||||
          for apk in "$APK_DIR"/*.apk; do
 | 
			
		||||
            BASENAME=$(basename "$apk")                          # ex: app-release-unsigned.apk
 | 
			
		||||
            SUFFIX=${BASENAME#app}                              # ex: -release-unsigned.apk
 | 
			
		||||
            NEW_NAME="${APP_NAME}${SUFFIX%\.apk}_${TAG}.apk"   # ex: MonApp-release-unsigned_v1.2.3.apk
 | 
			
		||||
            BASENAME=$(basename "$apk")
 | 
			
		||||
            SUFFIX=${BASENAME#app}
 | 
			
		||||
            NEW_NAME="${APP_NAME}${SUFFIX%\.apk}_${TAG}.apk"
 | 
			
		||||
            mv "$apk" "$APK_DIR/$NEW_NAME"
 | 
			
		||||
            APKs+=" $APK_DIR/$NEW_NAME"
 | 
			
		||||
          done
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user