fix(#63): require keystore env variables for release builds (#176)

* fix(#63): require keystore env variables for release builds

* fix(ci): conditionalize signing requirement to release tasks only
This commit is contained in:
M57 authored and GitHub committed 2026-06-20 22:47:46 +03:00
1 parent 64a047f095
commit a315c9d3d4
2 files changed
+27 -5

No files matched your search

+26 -4
View File
@@ -29,10 +29,32 @@ android {
signingConfigs {
create("release") {
storeFile = file(System.getenv("KEYSTORE_PATH") ?: "hermes-control-release.keystore.jks")
storePassword = System.getenv("KEYSTORE_PASSWORD") ?: "hermes_release"
keyAlias = System.getenv("KEY_ALIAS") ?: "hermes-control-release"
keyPassword = System.getenv("KEY_PASSWORD") ?: "hermes_release"
val isReleaseBuild = gradle.startParameter.taskNames.any { name ->
name.contains("Release", ignoreCase = true) || name == "build"
}
if (isReleaseBuild) {
val storePath = System.getenv("KEYSTORE_PATH")
val storePass = System.getenv("KEYSTORE_PASSWORD")
val alias = System.getenv("KEY_ALIAS")
val keyPass = System.getenv("KEY_PASSWORD")
require(!storePath.isNullOrEmpty()) { "KEYSTORE_PATH environment variable is not set" }
require(!storePass.isNullOrEmpty()) { "KEYSTORE_PASSWORD environment variable is not set" }
require(!alias.isNullOrEmpty()) { "KEY_ALIAS environment variable is not set" }
require(!keyPass.isNullOrEmpty()) { "KEY_PASSWORD environment variable is not set" }
storeFile = file(storePath)
storePassword = storePass
keyAlias = alias
keyPassword = keyPass
} else {
// Dummy values for evaluation configuration during non-release builds
storeFile = file("dummy.keystore")
storePassword = "dummy"
keyAlias = "dummy"
keyPassword = "dummy"
}
}
}