From 35fc459787b7c5cf79cc5edf65890ca16d01c1e2 Mon Sep 17 00:00:00 2001 From: Naveen Singh Date: Sun, 4 May 2025 13:56:05 +0530 Subject: [PATCH] build: allow builds without signing configuration --- app/build.gradle.kts | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index e9d1de09..fd8db4e4 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -15,6 +15,13 @@ if (keystorePropertiesFile.exists()) { keystoreProperties.load(FileInputStream(keystorePropertiesFile)) } +fun hasSigningVars(): Boolean { + return providers.environmentVariable("SIGNING_KEY_ALIAS").orNull != null + && providers.environmentVariable("SIGNING_KEY_PASSWORD").orNull != null + && providers.environmentVariable("SIGNING_STORE_FILE").orNull != null + && providers.environmentVariable("SIGNING_STORE_PASSWORD").orNull != null +} + android { compileSdk = project.libs.versions.app.build.compileSDKVersion.get().toInt() @@ -38,13 +45,15 @@ android { storeFile = file(keystoreProperties.getProperty("storeFile")) storePassword = keystoreProperties.getProperty("storePassword") } - } else { + } else if (hasSigningVars()) { register("release") { - keyAlias = System.getenv("SIGNING_KEY_ALIAS") - keyPassword = System.getenv("SIGNING_KEY_PASSWORD") - storeFile = file(System.getenv("SIGNING_STORE_FILE")) - storePassword = System.getenv("SIGNING_STORE_PASSWORD") + keyAlias = providers.environmentVariable("SIGNING_KEY_ALIAS").get() + keyPassword = providers.environmentVariable("SIGNING_KEY_PASSWORD").get() + storeFile = file(providers.environmentVariable("SIGNING_STORE_FILE").get()) + storePassword = providers.environmentVariable("SIGNING_STORE_PASSWORD").get() } + } else { + logger.warn("Warning: No signing config found. Build will be unsigned.") } } @@ -64,7 +73,9 @@ android { getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) - signingConfig = signingConfigs.getByName("release") + if (keystorePropertiesFile.exists() || hasSigningVars()) { + signingConfig = signingConfigs.getByName("release") + } } } @@ -104,7 +115,6 @@ android { bundle { language { - @Suppress("UnstableApiUsage") enableSplit = false } }