Allow changing keystore path

This commit is contained in:
bxdxnn
2026-09-12 18:10:53 +00:00
parent a5b95a18b2
commit 7191313ce5
3 changed files with 25 additions and 8 deletions
+23 -8
View File
@@ -38,6 +38,12 @@ plugins {
// alias(libs.plugins.gms.google.services) // alias(libs.plugins.gms.google.services)
} }
fun signingValue(envName: String, propertyName: String): String? =
providers.environmentVariable(envName)
.orElse(providers.gradleProperty(propertyName))
.orNull
?.takeIf { it.isNotBlank() }
android { android {
namespace = "io.element.android.x" namespace = "io.element.android.x"
@@ -88,13 +94,22 @@ android {
storePassword = "android" storePassword = "android"
} }
register("nightly") { register("nightly") {
keyAlias = System.getenv("ELEMENT_ANDROID_NIGHTLY_KEYID") keyAlias = signingValue("ELEMENT_ANDROID_NIGHTLY_KEYID", "signing.element.nightly.keyId")
?: project.property("signing.element.nightly.keyId") as? String? keyPassword = signingValue("ELEMENT_ANDROID_NIGHTLY_KEYPASSWORD", "signing.element.nightly.keyPassword")
keyPassword = System.getenv("ELEMENT_ANDROID_NIGHTLY_KEYPASSWORD") storeFile = file(
?: project.property("signing.element.nightly.keyPassword") as? String? signingValue("ELEMENT_ANDROID_NIGHTLY_STOREFILE", "signing.element.nightly.storeFile")
storeFile = file("./signature/nightly.keystore") ?: "./signature/nightly.keystore"
storePassword = System.getenv("ELEMENT_ANDROID_NIGHTLY_STOREPASSWORD") )
?: project.property("signing.element.nightly.storePassword") as? String? storePassword = signingValue("ELEMENT_ANDROID_NIGHTLY_STOREPASSWORD", "signing.element.nightly.storePassword")
}
val releaseStoreFile = signingValue("ELEMENT_ANDROID_RELEASE_STOREFILE", "signing.element.release.storeFile")
if (releaseStoreFile != null) {
register("release") {
keyAlias = signingValue("ELEMENT_ANDROID_RELEASE_KEYID", "signing.element.release.keyId")
keyPassword = signingValue("ELEMENT_ANDROID_RELEASE_KEYPASSWORD", "signing.element.release.keyPassword")
storeFile = file(releaseStoreFile)
storePassword = signingValue("ELEMENT_ANDROID_RELEASE_STOREPASSWORD", "signing.element.release.storePassword")
}
} }
} }
@@ -122,7 +137,7 @@ android {
"login_redirect_scheme", "login_redirect_scheme",
oAuthRedirectSchemeBase, oAuthRedirectSchemeBase,
) )
signingConfig = signingConfigs.getByName("debug") signingConfig = signingConfigs.findByName("release") ?: signingConfigs.getByName("debug")
optimization { optimization {
enable = true enable = true
+1
View File
@@ -27,6 +27,7 @@ Click on this link and follow the instruction: [https://appdistribution.firebase
Nightly build can be built manually from your computer. You will need to retrieved some secrets from Passbolt and add them to your file `~/.gradle/gradle.properties`: Nightly build can be built manually from your computer. You will need to retrieved some secrets from Passbolt and add them to your file `~/.gradle/gradle.properties`:
``` ```
signing.element.nightly.storeFile=VALUE_FROM_PASSBOLT
signing.element.nightly.storePassword=VALUE_FROM_PASSBOLT signing.element.nightly.storePassword=VALUE_FROM_PASSBOLT
signing.element.nightly.keyId=VALUE_FROM_PASSBOLT signing.element.nightly.keyId=VALUE_FROM_PASSBOLT
signing.element.nightly.keyPassword=VALUE_FROM_PASSBOLT signing.element.nightly.keyPassword=VALUE_FROM_PASSBOLT
+1
View File
@@ -39,6 +39,7 @@ org.gradle.configuration-cache.parallel=true
kotlin.incremental=true kotlin.incremental=true
# Dummy values for signing secrets / nightly # Dummy values for signing secrets / nightly
signing.element.nightly.storeFile=./signature/nightly.keystore
signing.element.nightly.storePassword=Secret signing.element.nightly.storePassword=Secret
signing.element.nightly.keyId=Secret signing.element.nightly.keyId=Secret
signing.element.nightly.keyPassword=Secret signing.element.nightly.keyPassword=Secret