/* * Geekdroid is a utility library for development on the Android * Platform. * * Copyright (C) 2017-2024 by Frederic-Charles Barthelery. * * This file is part of Geekdroid. * * Geekdroid is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Geekdroid is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with Geekdroid. If not, see . */ package com.geekorum.build import com.android.build.api.dsl.* import org.gradle.api.Project private typealias AppExtensionWithSigning = CommonExtension<*, ApplicationBuildType, *, *, *> private typealias LibExtensionWithSigning = CommonExtension<*, LibraryBuildType, *, *, *> private typealias TestExtensionWithSigning = CommonExtension<*, TestBuildType, *, *, *> // TODO This implicitly supports only the AppPlugin // should we support other android plugins: LibraryPlugin TestPlugin ? internal fun Project.configureReleaseSigningConfig() { val releaseStoreFile = findProperty("RELEASE_STORE_FILE") as? String ?: "" val releaseStorePassword = findProperty("RELEASE_STORE_PASSWORD") as? String ?: "" val releaseKeyAlias= findProperty("RELEASE_KEY_ALIAS") as? String ?: "" val releaseKeyPassword= findProperty("RELEASE_KEY_PASSWORD") as? String ?: "" extensions.configure("android") { signingConfigs { register("release") { storeFile = file(releaseStoreFile) storePassword = releaseStorePassword keyAlias = releaseKeyAlias keyPassword = releaseKeyPassword } } buildTypes { named("release") { signingConfig = signingConfigs.getByName("release") } } } }