diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index b9cc1b349..384af56a4 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -7,22 +7,36 @@ jobs: name: Build runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-java@v3 + - name: Checkout + uses: actions/checkout@v3 + + - name: Setup Java 11 + uses: actions/setup-java@v3 with: distribution: temurin java-version: 11 + - name: Setup Android SDK Tools uses: android-actions/setup-android@v2 + - name: Install NDK run: | echo "y" | sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "ndk;24.0.8215888" --sdk_root=${ANDROID_SDK_ROOT} &> /dev/null - - uses: gradle/gradle-build-action@v2 + + - name: Gradle Build + uses: gradle/gradle-build-action@v2 - run: | git submodule update --init --recursive gradle assembleRelease - - uses: actions/upload-artifact@v3 + - name: Update ARM64 + uses: actions/upload-artifact@v3 with: - name: github-${{ github.sha }} - path: app/build/outputs/apk/release/app-arm64-v8a-release-unsigned.apk + name: arm64-${{ github.sha }} + path: app/build/outputs/apk/release/app-arm64-v8a-release.apk + + - name: Update x86_64 + uses: actions/upload-artifact@v3 + with: + name: x86_64-${{ github.sha }} + path: app/build/outputs/apk/release/app-x86_64-release.apk \ No newline at end of file diff --git a/.github/workflows/releases.yml b/.github/workflows/releases.yml new file mode 100644 index 000000000..4ce69fa27 --- /dev/null +++ b/.github/workflows/releases.yml @@ -0,0 +1,42 @@ +name: Releases + +on: + push: + tags: + - "*" + +jobs: + linux: + name: Build + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Setup Java 11 + uses: actions/setup-java@v3 + with: + distribution: temurin + java-version: 11 + + - name: Setup Android SDK Tools + uses: android-actions/setup-android@v2 + + - name: Install NDK + run: | + echo "y" | sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "ndk;24.0.8215888" --sdk_root=${ANDROID_SDK_ROOT} &> /dev/null + + - name: Gradle Build + uses: gradle/gradle-build-action@v2 + - run: | + git submodule update --init --recursive + gradle assembleRelease + + - name: Releases + uses: softprops/action-gh-release@v0.1.14 + with: + body: Bump Version + prerelease: true + files: | + app/build/outputs/apk/release/app-arm64-v8a-release.apk + app/build/outputs/apk/release/app-x86_64-release.apk diff --git a/app/build.gradle b/app/build.gradle index a406991af..a68588577 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -22,14 +22,12 @@ android { } signingConfigs { - if (localProperties.getProperty("storeFile") != null) { sign { - storeFile file(localProperties.getProperty("storeFile")) - storePassword localProperties.getProperty("storePassword") - keyAlias localProperties.getProperty("keyAlias") - keyPassword localProperties.getProperty("keyPassword") + storeFile file(signStoreFile) + storePassword signStorePassword + keyAlias signkeyAlias + keyPassword signkeyPassword } - } } buildFeatures { @@ -76,17 +74,11 @@ android { minifyEnabled true shrinkResources true proguardFiles 'proguard-rules.pro' - if (localProperties.getProperty("storeFile") != null) { - signingConfig signingConfigs.sign - } + signingConfig signingConfigs.sign } debug { applicationIdSuffix ".debug" - if (localProperties.getProperty("storeFile") != null) { - signingConfig signingConfigs.sign - } else { - signingConfig signingConfigs.debug - } + signingConfig signingConfigs.debug } } diff --git a/app/keystore/androidkey.jks b/app/keystore/androidkey.jks new file mode 100644 index 000000000..a69b7d1cb Binary files /dev/null and b/app/keystore/androidkey.jks differ diff --git a/gradle.properties b/gradle.properties index 04a30fdda..2d7bff8b1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -21,3 +21,10 @@ android.useAndroidX=true android.enableJetifier=true android.enableAppCompileTimeRClass=true android.nonTransitiveRClass=true + +# signing environment variable +signStoreFile=keystore/androidkey.jks +signStorePassword=000000 +signkeyAlias=key0 +signkeyPassword=000000 +