소스 검색

Added release signing config

Vadik Sirekanyan 2 년 전
부모
커밋
1ad4e1a7b4
2개의 변경된 파일21개의 추가작업 그리고 6개의 파일을 삭제
  1. 13 5
      .github/workflows/build.yml
  2. 8 1
      app/build.gradle.kts

+ 13 - 5
.github/workflows/build.yml

@@ -25,15 +25,23 @@ jobs:
           distribution: 'temurin'
           java-version: '17'
       - shell: bash
-        run: ./gradlew assembleRelease
-      - shell: bash
-        run: ./gradlew bundleRelease
+        env:
+          SIGNING_KEYSTORE_FILE: release.keystore
+          SIGNING_KEYSTORE_BASE64: ${{ secrets.SIGNING_KEYSTORE_BASE64 }}
+          SIGNING_KEYSTORE_PASSWORD: ${{ secrets.SIGNING_KEYSTORE_PASSWORD }}
+          SIGNING_KEY_ALIAS: ${{ secrets.SIGNING_KEY_ALIAS }}
+          SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }}
+        run: |
+          base64 --decode <<< "$SIGNING_KEYSTORE_BASE64" > app/release.keystore
+          mkdir -p release-files
+          ./gradlew assembleRelease bundleRelease -PsigningConfig=release
+          mv app/build/outputs/*/release/*release* release-files
       - if: startsWith(github.ref, 'refs/tags/v')
         uses: softprops/action-gh-release@v1
         with:
           files: |
-            app/build/outputs/apk/release/*-release*.apk
-            app/build/outputs/bundle/release/*-release.aab
+            release-files/*release*.apk
+            release-files/*release*.aab
   tests:
     runs-on: macos-latest
     steps:

+ 8 - 1
app/build.gradle.kts

@@ -34,7 +34,14 @@ android {
             isMinifyEnabled = true
             isShrinkResources = true
             proguardFiles(getDefaultProguardFile("proguard-android.txt"), "proguard")
-            signingConfig = signingConfigs.getByName("debug")
+            if (findProperty("signingConfig") == "release") {
+                signingConfig = signingConfigs.create("release") {
+                    storeFile(file(System.getenv("SIGNING_KEYSTORE_FILE")))
+                    storePassword(System.getenv("SIGNING_KEYSTORE_PASSWORD"))
+                    keyAlias(System.getenv("SIGNING_KEY_ALIAS"))
+                    keyPassword(System.getenv("SIGNING_KEY_PASSWORD"))
+                }
+            }
         }
         getByName("debug") {
             applicationIdSuffix = ".debug"