repos.gradle revision 9ab3b4c389856fa168165423297d468ccf108a90
19ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas/*
29ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas * Copyright (C) 2017 The Android Open Source Project
39ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas *
49ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas * Licensed under the Apache License, Version 2.0 (the "License");
59ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas * you may not use this file except in compliance with the License.
69ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas * You may obtain a copy of the License at
79ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas *
89ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas *      http://www.apache.org/licenses/LICENSE-2.0
99ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas *
109ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas * Unless required by applicable law or agreed to in writing, software
119ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas * distributed under the License is distributed on an "AS IS" BASIS,
129ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
139ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas * See the License for the specific language governing permissions and
149ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas * limitations under the License.
159ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas */
169ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas
179ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikasimport org.gradle.api.artifacts.dsl.RepositoryHandler;
189ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas
199ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikasdef supportRoot = ext.supportRootFolder
209ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikasif (supportRoot == null) {
219ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas    throw new RuntimeException("variable supportRootFolder is not set. you must set it before" +
229ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas            " including this script")
239ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas}
249ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas
259ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikasdef checkoutRoot = "${supportRoot}/../.."
269ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikasext.repos = new Properties()
279ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikasext.repos.prebuiltsRoot = "${checkoutRoot}/prebuilts"
289ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikasext.repos.prebuiltsRootUri = "file://${repos.prebuiltsRoot}"
299ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas
309ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikasext.repoNames = ["${repos.prebuiltsRoot}/gradle-plugin",
319ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas                 "${repos.prebuiltsRoot}/tools/common/m2/repository",
329ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas                 "${repos.prebuiltsRoot}/tools/common/m2/internal",
339ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas                 "${repos.prebuiltsRoot}/maven_repo/android"]
349ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas
359ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas/**
369ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas * Adds maven repositories to the given repository handler.
379ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas */
389ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikasdef addMavenRepositories(RepositoryHandler handler) {
399ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas    repoNames.each { repo ->
409ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas        handler.maven {
419ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas            url repo
429ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas        }
439ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas    }
449ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas    if (System.getenv("ALLOW_PUBLIC_REPOS") != null) {
459ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas        handler.mavenCentral()
469ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas        handler.jcenter()
479ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas    }
489ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas    def androidPluginRepoOverride = System.getenv("GRADLE_PLUGIN_REPO")
499ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas    if (androidPluginRepoOverride != null) {
509ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas        handler.maven {
519ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas            url androidPluginRepoOverride
529ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas        }
539ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas    }
549ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas}
559ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikas
569ab3b4c389856fa168165423297d468ccf108a90Aurimas Liutikasext.repos.addMavenRepositories = this.&addMavenRepositories