From 43ed0fa30e7fb37de47dcbc1306b0d29116c64a1 Mon Sep 17 00:00:00 2001 From: adbenitez Date: Fri, 28 Aug 2026 15:55:02 +0200 Subject: [PATCH] make release CI process more similar to f-droid's use `-PABI_FILTER=` like the f-droid CI --- .github/workflows/release.yml | 13 ++++++------- build.gradle | 15 ++++++++------- makefile | 4 ++++ 3 files changed, 18 insertions(+), 14 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 941ec6a74..51fdf079f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -55,12 +55,12 @@ jobs: echo "DC_RELEASE_KEY_ALIAS_FDROID=${{ secrets.ALIAS_FDROID }}" >> ~/.gradle/gradle.properties echo "DC_RELEASE_KEY_ALIAS_GPLAY=${{ secrets.ALIAS_GPLAY }}" >> ~/.gradle/gradle.properties echo "DC_RELEASE_KEY_PASSWORD=${{ secrets.KEYSTORE_PASSWORD }}" >> ~/.gradle/gradle.properties - ./gradlew assembleFossRelease - rm build/outputs/apk/foss/release/*universal* + mkdir dist + for abi in armeabi-v7a arm64-v8a x86 x86_64; do ./gradlew -PABI_FILTER=$abi assembleFossRelease; mv build/outputs/apk/foss/release/*.apk dist/; done + mv build/outputs/mapping/fossRelease/mapping.txt dist/mapping-foss.txt ./gradlew assembleGplayRelease - mv build/outputs/apk/gplay/release/*universal* build/outputs/apk/foss/release/ArcaneChat-gplay.apk - mv build/outputs/mapping/fossRelease/mapping.txt build/outputs/mapping/fossRelease/mapping-foss.txt - mv build/outputs/mapping/gplayRelease/mapping.txt build/outputs/mapping/fossRelease/mapping-gplay.txt + mv build/outputs/apk/gplay/release/*universal* dist/ArcaneChat-gplay.apk + mv build/outputs/mapping/gplayRelease/mapping.txt dist/mapping-gplay.txt - name: Release on GitHub uses: softprops/action-gh-release@b4309332981a82ec1c5618f44dd2e27cc8bfbfda # v3.0.0 @@ -70,5 +70,4 @@ jobs: prerelease: ${{ contains(github.event.ref, '-beta') }} fail_on_unmatched_files: true files: | - build/outputs/apk/foss/release/*.apk - build/outputs/mapping/fossRelease/mapping-*.txt + dist/* diff --git a/build.gradle b/build.gradle index 92faa4026..bad4400d7 100644 --- a/build.gradle +++ b/build.gradle @@ -184,13 +184,7 @@ android { androidComponents { onVariants(selector().all()) { variant -> variant.outputs.each { output -> - output.outputFileName.set( - output.outputFileName.get() - .replace("android", "ArcaneChat") - .replace("-release", "") - .replace(".apk", "-${output.versionName.get()}.apk") - ) - + def apkSuffix = "-${output.versionName.get()}.apk" def vCode = output.versionCode.get() def abiFilter = output.filters.find { it.filterType == com.android.build.api.variant.FilterConfiguration.FilterType.ABI @@ -198,11 +192,18 @@ android { def abiName = abiFilter ? abiFilter.identifier : null if(project.hasProperty("ABI_FILTER")) { output.versionCode.set(vCode * 10 + project.ext.versionCodes.get(ABI_FILTER)) + apkSuffix = "-${ABI_FILTER}" + apkSuffix } else if (abiName != null && project.ext.versionCodes.containsKey(abiName)) { output.versionCode.set(vCode * 10 + project.ext.versionCodes.get(abiName)) } else { output.versionCode.set(vCode * 10 + 4) } + output.outputFileName.set( + output.outputFileName.get() + .replace("android", "ArcaneChat") + .replace("-release", "") + .replace(".apk", apkSuffix) + ) } } } diff --git a/makefile b/makefile index 08ee426c9..3e23913ec 100644 --- a/makefile +++ b/makefile @@ -34,6 +34,10 @@ fetch: clean: ./gradlew --offline clean +.PHONY: fmt +fmt: + ./gradlew spotlessApply + # CORE: