ci: add optional release signing from repository secrets
All checks were successful
Android build / build (push) Successful in 9m43s
Android build / build (release) Successful in 10m35s

This commit is contained in:
Hermes Agent
2026-08-29 12:04:19 -05:00
parent 94418c9edb
commit a2c34d5e3b
2 changed files with 61 additions and 0 deletions

View File

@@ -1,9 +1,23 @@
import java.util.Properties
plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
id("org.jetbrains.kotlin.plugin.compose")
}
val keystorePropertiesFile = rootProject.file("keystore.properties")
val keystoreProperties = Properties()
if (keystorePropertiesFile.exists()) {
keystorePropertiesFile.inputStream().use { keystoreProperties.load(it) }
}
val hasReleaseSigning = listOf(
"storeFile",
"storePassword",
"keyAlias",
"keyPassword",
).all { !keystoreProperties.getProperty(it).isNullOrBlank() }
android {
namespace = "solutions.tretter.esunandroid"
compileSdk = 35
@@ -19,6 +33,17 @@ android {
vectorDrawables.useSupportLibrary = true
}
signingConfigs {
if (hasReleaseSigning) {
create("release") {
storeFile = file(keystoreProperties.getProperty("storeFile"))
storePassword = keystoreProperties.getProperty("storePassword")
keyAlias = keystoreProperties.getProperty("keyAlias")
keyPassword = keystoreProperties.getProperty("keyPassword")
}
}
}
buildTypes {
release {
isMinifyEnabled = false
@@ -26,6 +51,9 @@ android {
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
if (hasReleaseSigning) {
signingConfig = signingConfigs.getByName("release")
}
}
}