* fix(#63): require keystore env variables for release builds * fix(ci): conditionalize signing requirement to release tasks only
This commit is contained in:
2 files changed
+27
-5
No files matched your search
+26
-4
@@ -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"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user