Skip to content

Commit c4b2808

Browse files
committed
feat: release signing
1 parent 6eb25ae commit c4b2808

File tree

4 files changed

+35
-9
lines changed

4 files changed

+35
-9
lines changed

.github/workflows/build.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ name: Build APK
22

33
on:
44
push:
5-
branches:
6-
- '*'
5+
branches-ignore:
6+
- 'release'
77
paths-ignore:
88
- '**.md'
99
pull_request:

.github/workflows/release.yml

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ jobs:
1717
steps:
1818
- name: Checkout repository
1919
uses: actions/checkout@v2
20+
with:
21+
ref: release
2022

2123
- name: Test version
2224
id: version
@@ -36,17 +38,23 @@ jobs:
3638
distribution: 'zulu'
3739

3840
- name: Build
41+
env:
42+
KEYSTORE_FILE: ./release.jks
43+
KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
44+
KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
45+
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
3946
run: |
4047
chmod +x ./gradlew
41-
CI=true ./gradlew :app:packageReleaseUniversalApk
42-
mv -T app/build/outputs/apk_from_bundle/release/app-release-universal.apk XSpoofSignatures-${{ steps.version.outputs.release_tag }}.apk
48+
echo '${{ secrets.KEYSTORE }}' | base64 -d > ./release.jks
49+
CI=true RELEASE=true ./gradlew :app:packageReleaseUniversalApk
50+
mv -T ./app/build/outputs/apk_from_bundle/release/app-release-universal.apk XSpoofSignatures-${{ steps.version.outputs.release_tag }}.apk
4351
4452
- name: Upload Artifact
4553
uses: actions/upload-artifact@v2
4654
with:
4755
name: xspoofsignatures
4856
path: |
49-
app/build/outputs/apk_from_bundle/release/app-release-universal.apk
57+
XSpoofSignatures-${{ steps.version.outputs.release_tag }}.apk
5058
5159
- name: Publish release
5260
uses: softprops/action-gh-release@v1

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@ build
88
/captures
99
.externalNativeBuild
1010
/.idea/
11+
release.*ks

app/build.gradle.kts

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,22 @@ android {
1313
versionName = "1.0.0"
1414
}
1515

16-
// signingConfigs {
17-
// named("release") {}
18-
// }
16+
signingConfigs {
17+
val keystoreFile = System.getenv("KEYSTORE_FILE")
18+
?: return@signingConfigs
19+
20+
create("release") {
21+
storeFile = rootDir.resolve(keystoreFile)
22+
storePassword = System.getenv("KEYSTORE_PASSWORD")
23+
keyAlias = System.getenv("KEY_ALIAS")
24+
keyPassword = System.getenv("KEY_PASSWORD")
25+
26+
enableV1Signing = true
27+
enableV2Signing = true
28+
enableV3Signing = true
29+
enableV4Signing = false
30+
}
31+
}
1932

2033
buildTypes {
2134
release {
@@ -26,7 +39,11 @@ android {
2639
"proguard-rules.pro",
2740
)
2841

29-
signingConfig = signingConfigs.getByName("debug")
42+
if (System.getenv("RELEASE") == "true") {
43+
signingConfig = signingConfigs.getByName("release")
44+
} else {
45+
signingConfig = signingConfigs.getByName("debug")
46+
}
3047
}
3148
}
3249

0 commit comments

Comments
 (0)