ext.versions = [ devBricksXVersion: { versionFile = "$rootDir/version.properties" -> def versionPropsFile = file(versionFile) Properties versionProps = new Properties() versionProps.load(new FileInputStream(versionPropsFile)) return versionProps['major'] + "." + versionProps['minor'] + "." + versionProps['patch'] }, devBricksXVersionCode: { versionFile = "$rootDir/version.properties" -> def versionPropsFile = file(versionFile) Properties versionProps = new Properties() versionProps.load(new FileInputStream(versionPropsFile)) return versionProps['code'] }, dumpVersions: { println("building DevBricksX: ${ext.versions.devBricksXVersion()} [code: ${ext.versions.devBricksXVersionCode()}]") } ] ext.depVersions = [ all : { versionsFile = "$rootDir/dep_versions.properties" -> def versionPropsFile = file(versionsFile) Properties versionProps = new Properties() versionProps.load(new FileInputStream(versionPropsFile)) return versionProps }, agp: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['AGP'] }, kotlin: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['KOTLIN'] }, ksp: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['KSP'] }, room: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['ROOM'] }, navigation: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['NAVIGATION'] }, compose: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['COMPOSE'] }, coil: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['COIL'] }, mavenPublish: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['MAVEN_PUBLISH'] }, devKit: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['DEVKIT'] }, java: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['JAVA'] }, junit: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['JUNIT'] }, android_junit_ext: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['ANDROID_JUNIT_EXT'] }, android_junit_espresso: { versionsFile = "$rootDir/dep_versions.properties" -> ext.depVersions.all(versionsFile)['ANDROID_JUNIT_ESPRESSO'] }, dumpVersions: { println("using DevKit: ${ext.depVersions.devKit()}") println("using Android Gradle Plugin: ${ext.depVersions.agp()}") println("using Kotlin: ${ext.depVersions.kotlin()}") println("using KSP: ${ext.depVersions.ksp()}") println("using ROOM: ${ext.depVersions.room()}") println("using Compose: ${ext.depVersions.compose()}") println("using Navigation: ${ext.depVersions.navigation()}") println("using Coil: ${ext.depVersions.coil()}") println("using Maven Publish: ${ext.depVersions.mavenPublish()}") println("using Java: ${ext.depVersions.java()}") println("using JUnit: ${ext.depVersions.junit()}") println("using Android JUnit Extension: ${ext.depVersions.android_junit_ext()}") println("using Android JUnit Expresso: ${ext.depVersions.android_junit_espresso()}") } ]