1*7e7863daSAndroid Build Coastguard Worker /* <lambda>null2*7e7863daSAndroid Build Coastguard Worker * Copyright (C) 2023 The Android Open Source Project 3*7e7863daSAndroid Build Coastguard Worker * 4*7e7863daSAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License"); 5*7e7863daSAndroid Build Coastguard Worker * you may not use this file except in compliance with the License. 6*7e7863daSAndroid Build Coastguard Worker * You may obtain a copy of the License at 7*7e7863daSAndroid Build Coastguard Worker * 8*7e7863daSAndroid Build Coastguard Worker * http://www.apache.org/licenses/LICENSE-2.0 9*7e7863daSAndroid Build Coastguard Worker * 10*7e7863daSAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software 11*7e7863daSAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS, 12*7e7863daSAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*7e7863daSAndroid Build Coastguard Worker * See the License for the specific language governing permissions and 14*7e7863daSAndroid Build Coastguard Worker * limitations under the License. 15*7e7863daSAndroid Build Coastguard Worker */ 16*7e7863daSAndroid Build Coastguard Worker 17*7e7863daSAndroid Build Coastguard Worker // Top-level build file where you can add configuration options common to all sub-projects/modules. 18*7e7863daSAndroid Build Coastguard Worker plugins { 19*7e7863daSAndroid Build Coastguard Worker alias(libs.plugins.android.application) apply false 20*7e7863daSAndroid Build Coastguard Worker alias(libs.plugins.android.library) apply false 21*7e7863daSAndroid Build Coastguard Worker alias(libs.plugins.android.test) apply false 22*7e7863daSAndroid Build Coastguard Worker alias(libs.plugins.kotlin.android) apply false 23*7e7863daSAndroid Build Coastguard Worker alias(libs.plugins.dagger.hilt.android) apply false 24*7e7863daSAndroid Build Coastguard Worker alias(libs.plugins.kotlin.kapt) apply false 25*7e7863daSAndroid Build Coastguard Worker 26*7e7863daSAndroid Build Coastguard Worker } 27*7e7863daSAndroid Build Coastguard Worker <lambda>null28*7e7863daSAndroid Build Coastguard Workertasks.register<Copy>("installGitHooks") { 29*7e7863daSAndroid Build Coastguard Worker println("Installing git hooks") 30*7e7863daSAndroid Build Coastguard Worker from(rootProject.rootDir.resolve("hooks/pre-commit")) 31*7e7863daSAndroid Build Coastguard Worker into(rootProject.rootDir.resolve(".git/hooks")) 32*7e7863daSAndroid Build Coastguard Worker fileMode = 7 * 64 + 7 * 8 + 5 // 0775 in decimal 33*7e7863daSAndroid Build Coastguard Worker } 34*7e7863daSAndroid Build Coastguard Worker <lambda>null35*7e7863daSAndroid Build Coastguard Workergradle.taskGraph.whenReady { 36*7e7863daSAndroid Build Coastguard Worker allTasks.forEach { task -> 37*7e7863daSAndroid Build Coastguard Worker if (task != tasks["installGitHooks"]) { 38*7e7863daSAndroid Build Coastguard Worker task.dependsOn(tasks["installGitHooks"]) 39*7e7863daSAndroid Build Coastguard Worker } 40*7e7863daSAndroid Build Coastguard Worker } 41*7e7863daSAndroid Build Coastguard Worker } 42*7e7863daSAndroid Build Coastguard Worker 43*7e7863daSAndroid Build Coastguard Worker // Task to print all the module paths in the project e.g. :core:data 44*7e7863daSAndroid Build Coastguard Worker // Used by module graph generator script 45*7e7863daSAndroid Build Coastguard Worker tasks.register("printModulePaths") { <lambda>null46*7e7863daSAndroid Build Coastguard Worker subprojects { 47*7e7863daSAndroid Build Coastguard Worker if (subprojects.size == 0) { 48*7e7863daSAndroid Build Coastguard Worker println(this.path) 49*7e7863daSAndroid Build Coastguard Worker } 50*7e7863daSAndroid Build Coastguard Worker } 51*7e7863daSAndroid Build Coastguard Worker }