Prepare QSfera production release
This commit is contained in:
@@ -14,6 +14,18 @@ def envValue(String primary, String legacy = null) {
|
||||
return legacy ? System.getenv(legacy) : null
|
||||
}
|
||||
|
||||
def releaseSigningEnv = [
|
||||
[primary: 'QSFERA_RELEASE_KEYSTORE', legacy: 'OC_RELEASE_KEYSTORE'],
|
||||
[primary: 'QSFERA_RELEASE_KEYSTORE_PASSWORD', legacy: 'OC_RELEASE_KEYSTORE_PASSWORD'],
|
||||
[primary: 'QSFERA_RELEASE_KEY_ALIAS', legacy: 'OC_RELEASE_KEY_ALIAS'],
|
||||
[primary: 'QSFERA_RELEASE_KEY_PASSWORD', legacy: 'OC_RELEASE_KEY_PASSWORD'],
|
||||
]
|
||||
|
||||
def missingReleaseSigningEnvKeys = {
|
||||
releaseSigningEnv.findAll { !envValue(it.primary, it.legacy) }
|
||||
.collect { "${it.primary} (${it.legacy} legacy fallback)" }
|
||||
}
|
||||
|
||||
dependencies {
|
||||
// Data and domain modules
|
||||
implementation project(':qsferaDomain')
|
||||
@@ -123,8 +135,8 @@ android {
|
||||
|
||||
testInstrumentationRunner "eu.qsfera.android.utils.OCTestAndroidJUnitRunner"
|
||||
|
||||
versionCode = 32
|
||||
versionName = "1.3.4"
|
||||
versionCode = 34
|
||||
versionName = "1.3.6"
|
||||
|
||||
buildConfigField "String", gitRemote, "\"" + getGitOriginRemote() + "\""
|
||||
buildConfigField "String", commitSHA1, "\"" + getLatestGitHash() + "\""
|
||||
@@ -235,6 +247,20 @@ android {
|
||||
testNamespace "eu.qsfera.android.test"
|
||||
}
|
||||
|
||||
gradle.taskGraph.whenReady { taskGraph ->
|
||||
def releaseBuildRequested = taskGraph.allTasks.any { task ->
|
||||
def taskName = task.name.toLowerCase()
|
||||
taskName.endsWith("release") &&
|
||||
(taskName.startsWith("assemble") || taskName.startsWith("bundle") || taskName.startsWith("package"))
|
||||
}
|
||||
def missingSigningEnvKeys = missingReleaseSigningEnvKeys()
|
||||
if (releaseBuildRequested && !missingSigningEnvKeys.isEmpty()) {
|
||||
throw new GradleException(
|
||||
"Release builds must be signed. Missing env vars: ${missingSigningEnvKeys.join(', ')}"
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
// Updates output file names of a given variant to format
|
||||
// [appName].[variant.versionName].[QSFERA_BUILD_NUMBER]-[variant.name].apk.
|
||||
//
|
||||
|
||||
Reference in New Issue
Block a user