From 4720bfb2ecf5c19b842bcaba8e373c540cc23810 Mon Sep 17 00:00:00 2001 From: deniscerri <64997243+deniscerri@users.noreply.github.com> Date: Mon, 24 Aug 2026 21:27:09 +0200 Subject: [PATCH] rework android workflow --- .github/workflows/android.yml | 138 +++++++++++----------------------- 1 file changed, 42 insertions(+), 96 deletions(-) diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index bc662528..eebcd511 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -16,6 +16,20 @@ jobs: permissions: contents: read + strategy: + fail-fast: false + matrix: + include: + - flavor: github + task: assembleGithubRelease + display_name: github + - flavor: foss + task: assembleFossRelease + display_name: FOSS + - flavor: izzy + task: assembleIzzyRelease + display_name: Izzy + steps: - uses: actions/checkout@v4 with: @@ -35,121 +49,53 @@ jobs: echo "${{ secrets.LOCAL_PROPERTIES }}" > keystore.properties chmod +x gradlew - - name: Build APK release projects - run: ./gradlew assembleGithubRelease assembleFossRelease assembleIzzyRelease --warning-mode all - - # --- GITHUB FLAVOR --- - - name: Upload GitHub arm64 - uses: actions/upload-artifact@v4 - with: - name: ytdlnis-autogenerated-arm64-v8a-release - path: ${{ env.main_project_module }}/build/outputs/apk/github/release/*arm64*.apk - - - name: Upload GitHub armeabiv7 - uses: actions/upload-artifact@v4 - with: - name: ytdlnis-autogenerated-armeabi-v7a-release - path: ${{ env.main_project_module }}/build/outputs/apk/github/release/*armeabi*.apk - - - name: Upload GitHub universal - uses: actions/upload-artifact@v4 - with: - name: ytdlnis-autogenerated-universal-release - path: ${{ env.main_project_module }}/build/outputs/apk/github/release/*universal*.apk - - - name: Upload GitHub x86 - uses: actions/upload-artifact@v4 - with: - name: ytdlnis-autogenerated-x86-release - path: ${{ env.main_project_module }}/build/outputs/apk/github/release/*x86-*.apk - - - name: Upload GitHub x86_64 - uses: actions/upload-artifact@v4 - with: - name: ytdlnis-autogenerated-x86_64-release - path: ${{ env.main_project_module }}/build/outputs/apk/github/release/*x86_64*.apk - - - name: Upload Full Github Folder - uses: actions/upload-artifact@v4 - with: - name: YTDLnis APK release generated - path: ${{ env.main_project_module }}/build/outputs/apk/github/release/ + # Build ONLY the specific flavor assigned to this matrix runner + - name: Build ${{ matrix.flavor }} APK release + run: ./gradlew ${{ matrix.task }} --warning-mode all - # --- FOSS FLAVOR --- - - name: Upload FOSS arm64 + # Upload individual ABI artifacts for this runner's flavor + - name: Upload arm64 uses: actions/upload-artifact@v4 with: - name: ytdlnis-autogenerated-arm64-v8a-foss-release - path: ${{ env.main_project_module }}/build/outputs/apk/foss/release/*arm64*.apk + name: ytdlnis-autogenerated-arm64-v8a-${{ matrix.flavor }}-release + path: ${{ env.main_project_module }}/build/outputs/apk/${{ matrix.flavor }}/release/*arm64*.apk - - name: Upload FOSS armeabiv7 + - name: Upload armeabiv7 uses: actions/upload-artifact@v4 with: - name: ytdlnis-autogenerated-armeabi-v7a-foss-release - path: ${{ env.main_project_module }}/build/outputs/apk/foss/release/*armeabi*.apk + name: ytdlnis-autogenerated-armeabi-v7a-${{ matrix.flavor }}-release + path: ${{ env.main_project_module }}/build/outputs/apk/${{ matrix.flavor }}/release/*armeabi*.apk - - name: Upload FOSS universal + - name: Upload universal uses: actions/upload-artifact@v4 with: - name: ytdlnis-autogenerated-universal-foss-release - path: ${{ env.main_project_module }}/build/outputs/apk/foss/release/*universal*.apk + name: ytdlnis-autogenerated-universal-${{ matrix.flavor }}-release + path: ${{ env.main_project_module }}/build/outputs/apk/${{ matrix.flavor }}/release/*universal*.apk - - name: Upload FOSS x86 + - name: Upload x86 uses: actions/upload-artifact@v4 with: - name: ytdlnis-autogenerated-x86-foss-release - path: ${{ env.main_project_module }}/build/outputs/apk/foss/release/*x86-*.apk + name: ytdlnis-autogenerated-x86-${{ matrix.flavor }}-release + path: ${{ env.main_project_module }}/build/outputs/apk/${{ matrix.flavor }}/release/*x86-*.apk - - name: Upload FOSS x86_64 + - name: Upload x86_64 uses: actions/upload-artifact@v4 with: - name: ytdlnis-autogenerated-x86_64-foss-release - path: ${{ env.main_project_module }}/build/outputs/apk/foss/release/*x86_64*.apk + name: ytdlnis-autogenerated-x86_64-${{ matrix.flavor }}-release + path: ${{ env.main_project_module }}/build/outputs/apk/${{ matrix.flavor }}/release/*x86_64*.apk - - name: Upload Full FOSS Folder + - name: Upload Full Folder uses: actions/upload-artifact@v4 with: - name: YTDLnis APK release FOSS generated - path: ${{ env.main_project_module }}/build/outputs/apk/foss/release/ + name: YTDLnis APK release ${{ matrix.display_name }} generated + path: ${{ env.main_project_module }}/build/outputs/apk/${{ matrix.flavor }}/release/ - # --- IZZY FLAVOR --- - - name: Upload Izzy arm64 - uses: actions/upload-artifact@v4 - with: - name: ytdlnis-autogenerated-arm64-v8a-izzy-release - path: ${{ env.main_project_module }}/build/outputs/apk/izzy/release/*arm64*.apk - - - name: Upload Izzy armeabiv7 - uses: actions/upload-artifact@v4 - with: - name: ytdlnis-autogenerated-armeabi-v7a-izzy-release - path: ${{ env.main_project_module }}/build/outputs/apk/izzy/release/*armeabi*.apk - - - name: Upload Izzy universal - uses: actions/upload-artifact@v4 - with: - name: ytdlnis-autogenerated-universal-izzy-release - path: ${{ env.main_project_module }}/build/outputs/apk/izzy/release/*universal*.apk - - - name: Upload Izzy x86 - uses: actions/upload-artifact@v4 - with: - name: ytdlnis-autogenerated-x86-izzy-release - path: ${{ env.main_project_module }}/build/outputs/apk/izzy/release/*x86-*.apk - - - name: Upload Izzy x86_64 - uses: actions/upload-artifact@v4 - with: - name: ytdlnis-autogenerated-x86_64-izzy-release - path: ${{ env.main_project_module }}/build/outputs/apk/izzy/release/*x86_64*.apk - - - name: Upload Full Izzy Folder - uses: actions/upload-artifact@v4 - with: - name: YTDLnis APK release Izzy generated - path: ${{ env.main_project_module }}/build/outputs/apk/izzy/release/ - - # --- TELEGRAM --- + # Separate job for Telegram so you only get ONE notification when all builds finish + notify: + needs: build + runs-on: ubuntu-latest + if: always() + steps: - name: Send Telegram Message continue-on-error: true uses: appleboy/telegram-action@master