From 06ba13f4d9d0b11943f3b0ebd716895bd57f00ad Mon Sep 17 00:00:00 2001 From: sn-o-w Date: Sun, 7 Jul 2024 02:26:45 +0300 Subject: [PATCH] Various changes to workflow files --- .github/workflows/debug.yml | 115 +++++++++++++--------------------- .github/workflows/release.yml | 99 ++++++++++++++--------------- 2 files changed, 92 insertions(+), 122 deletions(-) diff --git a/.github/workflows/debug.yml b/.github/workflows/debug.yml index 7c32cf8e35..31e7f4d0c8 100644 --- a/.github/workflows/debug.yml +++ b/.github/workflows/debug.yml @@ -16,10 +16,10 @@ jobs: with: submodules: 'recursive' - - name: set up JDK 17 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' cache: gradle @@ -32,41 +32,32 @@ jobs: - name: Build run: ./gradlew assembleArmv8Debug + - name: Determine the latest Build Tools version installed + shell: bash + run: echo "BUILD_TOOL_VERSION=$(ls "$ANDROID_HOME/build-tools/" | tail -n 1)" >> $GITHUB_ENV + - name: Sign APK id: sign_app - uses: tiann/zipalign-sign-android-release@v1.1.4 + uses: noriban/sign-android-release@master with: releaseDirectory: app/build/outputs/apk/armv8/debug/ signingKeyBase64: ${{ secrets.JAVA_KEYSTORE_DATA }} alias: ${{ secrets.KEY_ALIAS }} keyStorePassword: ${{ secrets.KEYSTORE_PASSWORD }} keyPassword: ${{ secrets.KEY_PASSWORD }} - zipAlign: true env: - BUILD_TOOLS_VERSION: "34.0.0" - - - name: Delete unsigned file - run: | - cd app/build/outputs/apk/armv8/debug/ - shopt -s extglob - rm -rf !(*-signed*) - - - name: Build Version - run: ./gradlew getVersion + BUILD_TOOLS_VERSION: ${{ env.BUILD_TOOL_VERSION }} - - name: Set Environment Variables + - name: Get current build version id: version-env run: | + ./gradlew getVersion echo "version=$(cat app/build/version.txt)" >> $GITHUB_ENV - echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT - - name: Git branch name - id: git-branch-name - uses: EthanSK/git-branch-name-action@main - - - name: Rename APK file + - name: Delete unsigned APK file and rename the signed one run: | - mv app/build/outputs/apk/armv8/debug/*.apk app/build/outputs/apk/armv8/debug/snapenhance-${{ env.version }}-armv8-${{ steps.version-env.outputs.sha_short }}.apk + find app/build/outputs/apk/armv8/debug/ -type f ! -name '*-signed*' -delete + mv ${{steps.sign_app.outputs.signedReleaseFile}} app/build/outputs/apk/armv8/debug/snapenhance-${{ env.version }}-armv8-${GITHUB_SHA::7}.apk - name: Upload artifact uses: actions/upload-artifact@v4 @@ -82,10 +73,10 @@ jobs: with: submodules: 'recursive' - - name: set up JDK 17 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' cache: gradle @@ -98,41 +89,32 @@ jobs: - name: Build run: ./gradlew assembleArmv7Debug + - name: Determine the latest Build Tools version installed + shell: bash + run: echo "BUILD_TOOL_VERSION=$(ls "$ANDROID_HOME/build-tools/" | tail -n 1)" >> $GITHUB_ENV + - name: Sign APK id: sign_app - uses: tiann/zipalign-sign-android-release@v1.1.4 + uses: noriban/sign-android-release@master with: releaseDirectory: app/build/outputs/apk/armv7/debug/ signingKeyBase64: ${{ secrets.JAVA_KEYSTORE_DATA }} alias: ${{ secrets.KEY_ALIAS }} keyStorePassword: ${{ secrets.KEYSTORE_PASSWORD }} keyPassword: ${{ secrets.KEY_PASSWORD }} - zipAlign: true env: - BUILD_TOOLS_VERSION: "34.0.0" - - - name: Delete unsigned file - run: | - cd app/build/outputs/apk/armv7/debug/ - shopt -s extglob - rm -rf !(*-signed*) + BUILD_TOOLS_VERSION: ${{ env.BUILD_TOOL_VERSION }} - - name: Build Version - run: ./gradlew getVersion - - - name: Set Environment Variables + - name: Get current build version id: version-env run: | + ./gradlew getVersion echo "version=$(cat app/build/version.txt)" >> $GITHUB_ENV - echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT - - - name: Git branch name - id: git-branch-name - uses: EthanSK/git-branch-name-action@main - - name: Rename APK file + - name: Delete unsigned APK file and rename the signed one run: | - mv app/build/outputs/apk/armv7/debug/*.apk app/build/outputs/apk/armv7/debug/snapenhance-${{ env.version }}-armv7-${{ steps.version-env.outputs.sha_short }}.apk + find app/build/outputs/apk/armv7/debug/ -type f ! -name '*-signed*' -delete + mv ${{steps.sign_app.outputs.signedReleaseFile}} app/build/outputs/apk/armv7/debug/snapenhance-${{ env.version }}-armv7-${GITHUB_SHA::7}.apk - name: Upload artifact uses: actions/upload-artifact@v4 @@ -148,10 +130,10 @@ jobs: with: submodules: 'recursive' - - name: set up JDK 17 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' cache: gradle @@ -164,41 +146,32 @@ jobs: - name: Build run: ./gradlew assembleAllDebug + - name: Determine the latest Build Tools version installed + shell: bash + run: echo "BUILD_TOOL_VERSION=$(ls "$ANDROID_HOME/build-tools/" | tail -n 1)" >> $GITHUB_ENV + - name: Sign APK id: sign_app - uses: tiann/zipalign-sign-android-release@v1.1.4 + uses: noriban/sign-android-release@master with: releaseDirectory: app/build/outputs/apk/all/debug/ signingKeyBase64: ${{ secrets.JAVA_KEYSTORE_DATA }} alias: ${{ secrets.KEY_ALIAS }} keyStorePassword: ${{ secrets.KEYSTORE_PASSWORD }} keyPassword: ${{ secrets.KEY_PASSWORD }} - zipAlign: true env: - BUILD_TOOLS_VERSION: "34.0.0" + BUILD_TOOLS_VERSION: ${{ env.BUILD_TOOL_VERSION }} - - name: Delete unsigned file - run: | - cd app/build/outputs/apk/all/debug/ - shopt -s extglob - rm -rf !(*-signed*) - - - name: Build Version - run: ./gradlew getVersion - - - name: Set Environment Variables + - name: Get current build version id: version-env run: | + ./gradlew getVersion echo "version=$(cat app/build/version.txt)" >> $GITHUB_ENV - echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT - - - name: Git branch name - id: git-branch-name - uses: EthanSK/git-branch-name-action@main - - name: Rename APK files + - name: Delete unsigned APK file and rename the signed one run: | - mv app/build/outputs/apk/all/debug/*.apk app/build/outputs/apk/all/debug/snapenhance-${{ env.version }}-universal-${{ steps.version-env.outputs.sha_short }}.apk + find app/build/outputs/apk/all/debug/ -type f ! -name '*-signed*' -delete + mv ${{steps.sign_app.outputs.signedReleaseFile}} app/build/outputs/apk/all/debug/snapenhance-${{ env.version }}-universal-${GITHUB_SHA::7}.apk - name: Upload universal uses: actions/upload-artifact@v4 @@ -214,10 +187,10 @@ jobs: with: submodules: 'recursive' - - name: set up JDK 17 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' cache: gradle @@ -241,10 +214,10 @@ jobs: with: submodules: 'recursive' - - name: set up JDK 17 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' cache: gradle @@ -258,4 +231,4 @@ jobs: uses: actions/upload-artifact@v4 with: name: core - path: app/build/outputs/apk/core/debug/*.apk \ No newline at end of file + path: app/build/outputs/apk/core/debug/*.apk diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 882bf68183..a91fe807df 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -20,10 +20,10 @@ jobs: with: submodules: 'recursive' - - name: set up JDK 17 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' cache: gradle @@ -35,28 +35,28 @@ jobs: - name: Build run: ./gradlew assembleArmv8Release + + - name: Determine the latest Build Tools version installed + shell: bash + run: echo "BUILD_TOOL_VERSION=$(ls "$ANDROID_HOME/build-tools/" | tail -n 1)" >> $GITHUB_ENV - name: Sign APK id: sign_app - uses: kevin-david/zipalign-sign-android-release@main + uses: noriban/sign-android-release@master with: releaseDirectory: app/build/outputs/apk/armv8/release/ signingKeyBase64: ${{ secrets.JAVA_KEYSTORE_DATA }} alias: ${{ secrets.KEY_ALIAS }} keyStorePassword: ${{ secrets.KEYSTORE_PASSWORD }} keyPassword: ${{ secrets.KEY_PASSWORD }} - - - name: Delete unsigned file - run: | - cd app/build/outputs/apk/armv8/release/ - shopt -s extglob - rm !(*-signed*) + env: + BUILD_TOOLS_VERSION: ${{ env.BUILD_TOOL_VERSION }} - name: Upload artifact uses: actions/upload-artifact@v4 with: name: snapenhance-armv8-release - path: app/build/outputs/apk/armv8/release/*.apk + path: ${{steps.sign_app.outputs.signedReleaseFile}} job_armv7: runs-on: macos-latest @@ -66,10 +66,10 @@ jobs: with: submodules: 'recursive' - - name: set up JDK 17 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' cache: gradle @@ -82,27 +82,27 @@ jobs: - name: Build run: ./gradlew assembleArmv7Release + - name: Determine the latest Build Tools version installed + shell: bash + run: echo "BUILD_TOOL_VERSION=$(ls "$ANDROID_HOME/build-tools/" | tail -n 1)" >> $GITHUB_ENV + - name: Sign APK id: sign_app - uses: kevin-david/zipalign-sign-android-release@main + uses: noriban/sign-android-release@master with: releaseDirectory: app/build/outputs/apk/armv7/release/ signingKeyBase64: ${{ secrets.JAVA_KEYSTORE_DATA }} alias: ${{ secrets.KEY_ALIAS }} keyStorePassword: ${{ secrets.KEYSTORE_PASSWORD }} keyPassword: ${{ secrets.KEY_PASSWORD }} - - - name: Delete unsigned file - run: | - cd app/build/outputs/apk/armv7/release/ - shopt -s extglob - rm !(*-signed*) + env: + BUILD_TOOLS_VERSION: ${{ env.BUILD_TOOL_VERSION }} - name: Upload artifact uses: actions/upload-artifact@v4 with: name: snapenhance-armv7-release - path: app/build/outputs/apk/armv7/release/*.apk + path: ${{steps.sign_app.outputs.signedReleaseFile}} job_universal: runs-on: macos-latest @@ -112,10 +112,10 @@ jobs: with: submodules: 'recursive' - - name: set up JDK 17 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' cache: gradle @@ -127,28 +127,28 @@ jobs: - name: Build run: ./gradlew assembleAllRelease - + + - name: Determine the latest Build Tools version installed + shell: bash + run: echo "BUILD_TOOL_VERSION=$(ls "$ANDROID_HOME/build-tools/" | tail -n 1)" >> $GITHUB_ENV + - name: Sign APK id: sign_app - uses: kevin-david/zipalign-sign-android-release@main + uses: noriban/sign-android-release@master with: releaseDirectory: app/build/outputs/apk/all/release/ signingKeyBase64: ${{ secrets.JAVA_KEYSTORE_DATA }} alias: ${{ secrets.KEY_ALIAS }} keyStorePassword: ${{ secrets.KEYSTORE_PASSWORD }} keyPassword: ${{ secrets.KEY_PASSWORD }} - - - name: Delete unsigned file - run: | - cd app/build/outputs/apk/all/release/ - shopt -s extglob - rm !(*-signed*) + env: + BUILD_TOOLS_VERSION: ${{ env.BUILD_TOOL_VERSION }} - name: Upload universal uses: actions/upload-artifact@v4 with: name: snapenhance-universal-release - path: app/build/outputs/apk/all/release/*.apk + path: ${{steps.sign_app.outputs.signedReleaseFile}} job_manager: runs-on: ubuntu-latest @@ -158,10 +158,10 @@ jobs: with: submodules: 'recursive' - - name: set up JDK 17 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' cache: gradle @@ -171,27 +171,27 @@ jobs: - name: Build run: ./gradlew manager:assembleRelease + - name: Determine the latest Build Tools version installed + shell: bash + run: echo "BUILD_TOOL_VERSION=$(ls "$ANDROID_HOME/build-tools/" | tail -n 1)" >> $GITHUB_ENV + - name: Sign APK id: sign_app - uses: kevin-david/zipalign-sign-android-release@main + uses: noriban/sign-android-release@master with: releaseDirectory: manager/build/outputs/apk/release/ signingKeyBase64: ${{ secrets.JAVA_KEYSTORE_DATA }} alias: ${{ secrets.KEY_ALIAS }} keyStorePassword: ${{ secrets.KEYSTORE_PASSWORD }} keyPassword: ${{ secrets.KEY_PASSWORD }} - - - name: Delete unsigned file - run: | - cd manager/build/outputs/apk/release/ - shopt -s extglob - rm !(*-signed*) + env: + BUILD_TOOLS_VERSION: ${{ env.BUILD_TOOL_VERSION }} - name: Upload artifact uses: actions/upload-artifact@v4 with: name: manager - path: manager/build/outputs/apk/release/*.apk + path: ${{steps.sign_app.outputs.signedReleaseFile}} job_release: runs-on: ubuntu-latest @@ -203,24 +203,21 @@ jobs: with: submodules: 'recursive' - - name: set up JDK 17 + - name: Set up JDK 21 uses: actions/setup-java@v4 with: - java-version: '17' + java-version: '21' distribution: 'temurin' cache: gradle - name: Grant execute permission for gradlew run: chmod +x gradlew - - name: Generate version - run: ./gradlew getVersion - - - name: Set Environment Variables + - name: Get current build version id: version-env run: | + ./gradlew getVersion echo "version=$(cat app/build/version.txt)" >> $GITHUB_ENV - echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT - name: Download artifacts uses: actions/download-artifact@v4 @@ -229,9 +226,9 @@ jobs: merge-multiple: true - name: Publish APK - uses: marvinpinto/action-automatic-releases@latest + uses: softprops/action-gh-release@master with: - repo_token: "${{ secrets.GITHUB_TOKEN }}" + token: ${{ secrets.GITHUB_TOKEN }} prerelease: ${{ inputs.prerelease }} files: bins/*.apk - automatic_release_tag: v${{ env.version }} \ No newline at end of file + tag_name: v${{ env.version }}