propLoader.gradle revision 7d9836f8bd4f2525597b091787d0858784c6c22e
1/** 2 * Helper build script that reads data binding variables and sets up the projects. 3 */ 4def forceReleaseVersion = project.hasProperty('useReleaseVersion') && project.getProperty('useReleaseVersion').equals("true") 5def root = ext.rootFolder 6Properties databindingProperties = new Properties() 7databindingProperties.load(new FileInputStream("${root}/databinding.properties")) 8if (forceReleaseVersion) { 9 databindingProperties.version = databindingProperties.releaseVersion 10} 11databindingProperties.compileSdkVersion = Integer.parseInt(databindingProperties.compileSdkVersionStr) 12def repoBase = databindingProperties.mavenRepoAbsolutePath == "." ? root : databindingProperties.mavenRepoAbsolutePath 13databindingProperties.mavenRepoDir = "${repoBase}/${databindingProperties.mavenRepoName}" 14databindingProperties.extraPluginsRepoDir = "${root}/${databindingProperties.extraPluginsRepoName}" 15 16databindingProperties.eapOutDir = "${root}/${databindingProperties.eapOutFolderName}" 17databindingProperties.prebuildFolder = "${root}/${databindingProperties.prebuildFolderName}" + 18 "/${databindingProperties.releaseVersion}" 19 20ext.config = databindingProperties 21ext.config.externalPrebuiltsBase = "${root}/../../prebuilts" 22databindingProperties.megaRepoDir = "${databindingProperties.externalPrebuiltsBase}/tools/common/m2/repository" 23 24println "local maven repo is ${ext.config.mavenRepoDir}." 25println "local pre-build folder is ${ext.config.prebuildFolder}." 26println "mega-repo folder is ${ext.config.megaRepoDir}." 27 28new File(ext.config.mavenRepoDir).mkdir() 29new File(ext.config.prebuildFolder).mkdir() 30 31def addRemoteRepos = project.hasProperty('addRemoteRepos') && project.getProperty('addRemoteRepos').equals("true") 32ext.config.addRemoteRepos = addRemoteRepos 33ext.config.sharedSupportRepoDir = "${ext.config.externalPrebuiltsBase}/maven_repo/android" 34ext.config.inReleaseBuild = !databindingProperties.version.endsWith("SNAPSHOT") 35def config = ext.config 36def localRepositories = ["${config.extraPluginsRepoDir}", 37 "${config.megaRepoDir}", 38 "${config.mavenRepoDir}", 39 "${config.externalPrebuiltsBase}/tools/common/offline-m2", 40 config.sharedSupportRepoDir, 41 "${config.externalPrebuiltsBase}/gradle-plugin", 42 "${config.externalPrebuiltsBase}/tools/common/m2/repository"] 43ext.config.localRepositories = localRepositories 44def addRepos(RepositoryHandler handler) { 45 config.localRepositories.each { repo -> 46 handler.maven { 47 url repo 48 } 49 } 50 if (config.addRemoteRepos) { 51 handler.jcenter() 52 handler.mavenCentral() 53 } 54} 55ext.addRepos = this.&addRepos 56subprojects { 57 buildscript { 58 config.localRepositories.each { repo -> 59 repositories.maven { 60 url repo 61 } 62 } 63 repositories { 64 if (config.addRemoteRepos) { 65 jcenter() 66 mavenCentral() 67 } 68 } 69 } 70 repositories { 71 config.localRepositories.each { repo -> 72 repositories.maven { 73 url repo 74 } 75 } 76 if (config.addRemoteRepos) { 77 jcenter() 78 mavenCentral() 79 } 80 } 81} 82 83