Skip to content

Commit c1173ed

Browse files
committed
build: allow builds without signing configuration
1 parent d409c95 commit c1173ed

File tree

1 file changed

+19
-8
lines changed

1 file changed

+19
-8
lines changed

app/build.gradle.kts

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,13 @@ if (keystorePropertiesFile.exists()) {
1515
keystoreProperties.load(FileInputStream(keystorePropertiesFile))
1616
}
1717

18+
fun hasSigningVars(): Boolean {
19+
return providers.environmentVariable("SIGNING_KEY_ALIAS").orNull != null
20+
&& providers.environmentVariable("SIGNING_KEY_PASSWORD").orNull != null
21+
&& providers.environmentVariable("SIGNING_STORE_FILE").orNull != null
22+
&& providers.environmentVariable("SIGNING_STORE_PASSWORD").orNull != null
23+
}
24+
1825
android {
1926
compileSdk = project.libs.versions.app.build.compileSDKVersion.get().toInt()
2027

@@ -35,13 +42,15 @@ android {
3542
storeFile = file(keystoreProperties.getProperty("storeFile"))
3643
storePassword = keystoreProperties.getProperty("storePassword")
3744
}
38-
} else {
45+
} else if (hasSigningVars()) {
3946
register("release") {
40-
keyAlias = System.getenv("SIGNING_KEY_ALIAS")
41-
keyPassword = System.getenv("SIGNING_KEY_PASSWORD")
42-
storeFile = file(System.getenv("SIGNING_STORE_FILE"))
43-
storePassword = System.getenv("SIGNING_STORE_PASSWORD")
47+
keyAlias = providers.environmentVariable("SIGNING_KEY_ALIAS").get()
48+
keyPassword = providers.environmentVariable("SIGNING_KEY_PASSWORD").get()
49+
storeFile = file(providers.environmentVariable("SIGNING_STORE_FILE").get())
50+
storePassword = providers.environmentVariable("SIGNING_STORE_PASSWORD").get()
4451
}
52+
} else {
53+
logger.warn("Warning: No signing config found. Build will be unsigned.")
4554
}
4655
}
4756

@@ -61,7 +70,9 @@ android {
6170
getDefaultProguardFile("proguard-android-optimize.txt"),
6271
"proguard-rules.pro"
6372
)
64-
signingConfig = signingConfigs.getByName("release")
73+
if (keystorePropertiesFile.exists() || hasSigningVars()) {
74+
signingConfig = signingConfigs.getByName("release")
75+
}
6576
}
6677
}
6778

@@ -77,7 +88,8 @@ android {
7788
}
7889

7990
compileOptions {
80-
val currentJavaVersionFromLibs = JavaVersion.valueOf(libs.versions.app.build.javaVersion.get())
91+
val currentJavaVersionFromLibs =
92+
JavaVersion.valueOf(libs.versions.app.build.javaVersion.get())
8193
sourceCompatibility = currentJavaVersionFromLibs
8294
targetCompatibility = currentJavaVersionFromLibs
8395
}
@@ -101,7 +113,6 @@ android {
101113

102114
bundle {
103115
language {
104-
@Suppress("UnstableApiUsage")
105116
enableSplit = false
106117
}
107118
}

0 commit comments

Comments
 (0)